It could be that the date filter is not being pushed down to the source which, instead, results in all of the rows being pulled into the virtual layer where the filter is then applied. To get some insight into why D3 is taking so long to execute, I would analyze its [execution trace](https://community.denodo.com/docs/html/browse/latest/vdp/administration/appendix/execution_trace_information/execution_trace_information), which will provide details about view's query plan. From there, you can decide on what changes are needed to optimize your queries.
For more information on this topic, I would refer to the below documentation, which discusses query optimization in great detail:
* ["Automatic Simplification of Queries"](https://community.denodo.com/docs/html/browse/latest/vdp/administration/optimizing_queries/automatic_simplification_of_queries/automatic_simplification_of_queries#automatic-simplification-of-queries)
* ["Best Practices to Maximize Performance I: Modeling Big Data and Analytic Use Cases"](https://community.denodo.com/kb/view/document/Best%20Practices%20to%20Maximize%20Performance%20I%3A%20Modeling%20Big%20Data%20and%20Analytic%20Use%20Cases?category=Best+Practices)
* ["Best Practices to Maximize Performance II: Configuring the Query Optimizer"](https://community.denodo.com/kb/view/document/Best%20Practices%20to%20Maximize%20Performance%20II:%20Configuring%20the%20Query%20Optimizer?category=Best+Practices)
If you are a valid Support user, then you can create a Support case on the [Denodo Support Site](https://support.denodo.com/), where the Support team will help you.
Hope this helps!