4. Need to data access & analysis is growing
Google search
https://dataedo.com
5. Databases are vague
Sample table and column names from real databases:
• MTL_SYSTEM_ITEMS_B – Raw materials?
• tP – Projects. Who would guess…
• BEN_PRTT_RMT_RQST_CTFN_PRVDD - ?
• RSRCSECX - ?
• ATTRIBUTE5 – Who knows…
https://dataedo.com
7. Databases are large
Number of tables and views in sample applications:
• Sample custom enterprise application: 3,000
• TETA (HRM): 9,000
• Oracle e-Business Suite (ERP): 55,000
• SAP (ERP): 130,000!
https://dataedo.com
8. …but as if addresses had following format:
PA_ADW_R_ACT_CMT_B_V.TXN_ADW_NOTIFY_FLAG
Finding a column is like trying to find an apartment in Manhattan
10. When is it useful?
• Software Development
• Data Warehousing, BI
• Data Analysis, Data Science, Big Bata
• Packaged application implementation – ERP, CRM, HRM,
billing etc.
• Application Integration (EAI, EII, MDM)
• Software/system maintenance
• Data Migration
• Data Quality
• Master Data Management
https://dataedo.com
12. 1. Data Dictionary
Table: employee
Table holds past, current and future company employees.
Column Data type Description
BusinessEntityID int Primary key for Employee records. Foreign key
to BusinessEntity.BusinessEntityID.
NationalIDNumber nvarchar(15) Unique national identification number such as
a social security number.
LoginID nvarchar(256) Network login.
OrganizationNode hierarchyid Where the employee is located in corporate
hierarchy.
OrganizationLevel smallint The depth of the employee in the corporate
hierarchy.
JobTitle nvarchar(50) Work title such as Buyer or Sales
Representative.
https://dataedo.com
13. Relations
https://dataedo.com
Table Role Foreign key column Description
Departments Works in DepartmentID Department where emplyee
People Manager ManagerID Employee superior
JobsDict Job title TitleID Employee job title
14. Statuses
Employee row can be in following statuses based on dates:
• Future – start_date > today or start_date null
• Current – start_date <= today and (end_date > today or null)
• Past – end_date < today
https://dataedo.com
15. List of Values
Column Description
MaritalStatus M = Married, S = Single, NULL = Unknown
ActiveFlag 1 = Active, 0 = Inactive
https://dataedo.com
16. Data Access Interface
To modify and fetch data use this:
• employee_get – returns specified employee row
• employees_get – returns selected employees
• employee_insert – use this to insert new employee
• employee_update – use this to update employee row
• employee_delete – use this to delete employee
https://dataedo.com
18. Data Source
Table: employee
Data source: Employees form, sync_employees
Column Source
MaritalStatus Employees form
NationalIDNumber Employees form
Number emp_no trigger
Score Data warehouse, calc_employees_scores
https://dataedo.com
19. Other Metadata
Table: po_headers_all (Purchase orders)
Subject Area: Purchasing
Owner: Piotr Kononow
Column
po_header_id
po_header_number [OBSOLETE]
po_header_code
qty Quantity
value qty * unit_price
https://dataedo.com
21. Meaningful Descriptions
Do this:
Column Description
number Invoice autogenerated number, starting from 1 each
year. Number is generated when invoice gets
approved.
date Invoice issue date. Null for working copy invoices. Set
to today’s date on invoice approval.
https://dataedo.com