You can translate the question and the replies:

Associations between base views and derived views?

Hi Team, Does it makes sense to create associations between base views and dervied views? Ot just create associations between base views ? And create seperate associations between derived views? Also for the scenario where there is no PK FK relation ship defined between the data (when dealing with API) does it makes sense to create associations between the dervied views? Just want to understand under what scenarios to create the associations? I read the KB and its not very clear so looking for help here! Thanks!
user
04-08-2021 13:01:27 -0400

4 Answers

Hi, You can create associations between any views depending on your requirement. When you create base views from a database, the administration tool has the option of automatically importing the primary key/foreign key constraints from the database. This is not possible for other types of sources because they do not provide this information or they do not do it in a standardized way. Defining associations are necessary in various scenarios, such as, * Enhancing optimization techniques * Better semantic model * Traversing relationships For more details, please refer to [here.](https://community.denodo.com/docs/html/browse/8.0/en/vdp/administration/restful_architecture/associations/associations#why-you-should-define-associations-between-views) Hope this helps!
Denodo Team
04-08-2021 17:55:56 -0400
Thanks for the reply but still its not very clear. So consider I imported the base views from a SQL database then is it fine to just create the associations between base views? And no need to create associations between derived views? Whats the importance of creating associations between derived views vs base views? Thanks in advance!!
user
06-08-2021 18:23:04 -0400
Can i get few examples when to create associations jsut on base views? associations between base and derived views? associations just between dervied views?
user
06-08-2021 18:24:09 -0400
Hi, There are several reasons why it is good to define associations between base views or derived views: * From a performance perspective, some queries are executed much faster; there are some optimizations that the query optimizer can only apply if the appropriate associations are defined. * Virtual DataPort publishes information about the associations marked as referential constraints. If you use a business intelligence tool to query Denodo, this tool may take into account this information to execute more efficient queries. * From a metadata perspective, they help define a better semantic model because you can define referential constraints (primary key/foreign key relation) between views. If you are using an external governance tool, the associations of views will provide additional semantics to your model. * From the perspective of the Data Catalog, the associations allow business users to discover views that are related. For example: 1) When querying a view, you can traverse its associations, 2) The associations of the views are displayed in the “Relationships” dialog of the views. * From a usability perspective, using the HTML representation of the RESTful Web service, you can browse across views that have an association between them. In addition, two optimization techniques where associations are useful are Aggregation Push Down and Branch Pruning. Take a look at the [Optimization for Logical DataWarehouse](https://community.denodo.com/kb/en/view/document/Denodo%20Query%20Optimizations%20for%20the%20Logical%20Data%20Warehouse) for performance optimization using Associations. The example mentioned in the document is of a typical star schema. Hope this helps!
Denodo Team
12-08-2021 17:29:23 -0400
You must sign in to add an answer. If you do not have an account, you can register here