You can translate the question and the replies:

Data Movement

Hi, what is the difference between data movement to source vs data movement to view ? I found that my execution time reduced in case of data movement to view. Is it situational or is it always more performance efficient compared to data movement to data source. Regards Salman Khan
31-12-2019 01:15:22 -0500

1 Answer

Hi, Selecting a "data source" as a target of Data Movement will create a temporary table in the underlying data source and transfer the data of the smaller view into the data source of the larger view. Whereas, selecting a "view" as a target of data movement handles the cases where the large view is composed of tables from multiple different sources. The data from smaller view will be moved to all the branches of the target view. Here is an example of how data movement is performed when you enable the option "Move to'View'": Let's say that you have two views. 'view1' join 'view_partitioned_union' and you do a data movevement to view of 'view1' to 'view_partitioned_union', this datamovement will move physically, 'view1' to all the branches of the partitioned union view 'view_partitioned_union'. So, if you have 'view_partitioned_union' wich is a union of 'current_sales' and 'historical_sales' from 2 different datasources, It will do the data movement to 1st or 2nd datasources depending on the where condition of the query. The performance efficiency of view or data source as a target depends on the scenario. I would suggest you to inspect the Execution Trace of a query to determine the performance. The Execution trace allows you to see each view and datasource accessed and the time spent at each node. For more information about Data Movement query optimization, you can have look at the [Denodo Platform 7.0 Data Movement]( section of Virtual DataPort Administration Guide. Hope this helps!
Denodo Team
31-12-2019 21:04:39 -0500
You must sign in to add an answer. If you do not have an account, you can register here