Multiple roll-up granularity within a data source?

Is it possible to have multiple roll-up granularity within a data source?
In our case, we like to provide drill-down by time function. When user select a span of day, we show a day trend. And when user click on a node of day, then we show hourly trend of the day, click on hour node, drill down to minutes trend.

Our ingestion granularity is set to minute, so when we should daily trend, the performance is pretty much unacceptable. What we have done so far is to create multiple data source, each have different ingestion granularity. And the business layer have to decide which data source to query against according to trend granularity.

Is there better way to solve the problem?