Discovery Guide > Introducing Discovery > Discovery Architecture > Data Relationships
 
Data Relationships
Discovery lets you work with three types of data relationships:
Discovered Relationships
Foreign Key Relationships
User Defined Relationships
Discovered Relationships
Discovery automatically finds unknown relationships within and between data sources based on:
Metadata ‘introspected’ using the TDV data source definition technology. Discovery understands schemas, catalogs, tables, column names, data types, lengths, and primary and foreign key constraints.
The data values themselves. Implicit relationships are discovered using data correlation between pairs of columns. For columns from two tables to have a JOIN relationship, they must have at least one value in common.
Discovery assigns a Relationship Probability Score (RPS) based on the number of common values between two columns, whether either column is a primary or foreign key, similar or identical table or column names, and so on.
Discovery finds relationships between single columns across tables. You can also configure it to find:
Multicolumn compound relationships, where two columns in a table form a unique key that matches the same two columns in another table.
Relationships based on user-defined data domains that specify patterns in which matching data might be stored.
Discovery lets you validate probable relationships and remove those that are not valid.
Foreign Key Relationships
Discovery finds existing relationships (primary and foreign key relationships) using system metadata in existing schemas. These relationships are discovered and can be displayed in models. Foreign key relationships are always considered to be valid.
User Defined Relationships
Even if a relationship is not found by the Discovery RPS algorithm, users can create new relationships based on their knowledge of the data.