Mastering tables are essential where multiple sources contain information on the same collection. For instance, the CRM, email marketing and eCommerce software all contain customer data. The same customer may or may not exist in all of these systems, so we need to know where to take the customer information from. In addition, their email address in the CRM may not match the email address in the email marketing platform.

These tables are primary key mapping tables between separate sources to create the basis of abstracting a canonical entity from.

Mastering tables should always go into the mastering schema and should be suffixed with _mastering. For example, mastering.hubspot_salesforce_auth_client_mastering. An example graph of this mastering step in a pipeline is shown below.


What’s Next