• Physical file names
• Database names
• Other metadata.
In an SBM, the data dictionary serves as a repository for all the metadata that represents various data sources. A virtual database is another term for this repository. For the developer, they only attach to the data dictionary and aren’t concerned with the particular details of the data sources (such as how to connect).
Transforming Hierarchical Data Structures
Certain legacy data has array data located in the record definition. For instance, a COBOL File Definition (FD) representing a VSAM file might have an array of grades embedded in a student record, an IMS segment might have child segments, or an ADABAS record might have MU or PE fields (arrays of data stored within a single record). How can this type of data structure turn into relational tables?
Figure 3 displays the transformation from a COBOL FD into relational tables. The bold fields represent the primary key for those tables. An occurs clause represents an array, and triggers a normalization activity that produces a child table. In this example, a child table (MonthlyPaymentTable) was generated that contains three fields. It contains a primary key (CustomerID, MonthID), and an additional attribute (PaymentAmount). The child table (Monthly Payment) is related to its parent (Customer) by the CustomerID field. An SQL statement that joins those two tables might be something like: