Data Model ERDs
Source Files
Data Model Design
Guidelines
- The database is a "black box", so nothing sees it except for core Registry code. All manipulation is done via APIs.
- Where possible, tables should be consolidated to keep the number of tables down and simplify administering them. As a general rule of thumb, if two tables have the same structure and vary by only one column name, the tables should be consolidated.
Naming Conventions
- Table names are prefixed
CCT_
whereCC
indicates the responsible component andT
indicates the type of table as enumerated above. - Table and column names are all lowercase, with underscores (
_
) to separate words/fragments. StudlyCaps are not used. - Natural english is preferred over major/minor. So
start_date
, notdate_start
. - Column names should avoid incorporating the table name.
- The suffix
_id
indicates a row identifier. - The suffix
_t
indicates a type identifier, as defined inctx_data_types
.
Terminology
Table Types
- Staging (S): Tables that directly reflect the source (or "raw") data, with only minimal formatting changes.
- Calculated (C): Tables that are the result of business rule execution.
- Supporting (X): Tables that relate to the management of the system, and that are generally only modified by the administrator.
- Original (O): Tables that hold data original to/originated by the Registry.
- Dictionary (D): Support tables that hold definitions external to the Registry. Example: A list of countries.
- View (V): A database view, constructed of underlying tables.
Table Data Descriptions
- (Pre)defined: Definitions provided out of the box, may be added to by local deployment
- Instantiated: Definitions added by local deployment
- Standardized: Normalized data transformed from SOR specific format to common format
- Raw: Untouched data from SOR
- Calculated: Data calculated by transformation on raw, standardized, or calculated data
...