File Processing : Other Issues
A data dictionary is essential for managing database systems as it stores vital metadata. It encompasses information about relations, attributes, views, and user accounts, including login details. It provides insights into statistical data and the physical storage organization of relations, specifying how and where data is stored. This document also discusses the representation of data dictionaries, covering the importance of persistent versus volatile objects, object identifiers (OIDs), and the necessity of mapping logical OIDs to physical locations.
File Processing : Other Issues
E N D
Presentation Transcript
File Processing : Other Issues 2007, Spring Pusan National University Ki-Joune Li
Data Dictionary : What does it contain ? • Data dictionary (also called system catalog) stores Metadata • Information about relations • names of relations • names and types of attributes of each relation • names and definitions of views • User and accounting information, including passwords • Statistical and descriptive data • number of tuples in each relation • Physical file organization information • How relation is stored (sequential/hash/…) • Physical location of relation • operating system file name or • disk addresses of blocks containing records of the relation • Information about indices
Relation-metadata (relation-name, number-of-attributes, storage-organization, location)Attribute-metadata (attribute-name, relation-name, domain-type, position, length) User-metadata (user-name, encrypted-password, group) Index-metadata (index-name, relation-name, index-type, index-attributes) View-metadata (view-name, definition) Data Dictionary : How to Represent it • Data structure • specialized data structures designed for efficient access • a set of relations, with existing system features used to ensure efficient access • The latter alternative is usually preferred
Persistent Object • Objects in C++ program • Volatile Object : Disappears with the termination of program • Persistent Object • Non-Volatile Object : Keeps its status despite of its termination • A Necessary Condition for Object-Oriented Databases • Object vs. Record
OID : Object Identifier • ID given by system • the only way to identify object • one ID per an object • Logical OID vs. Physical OID • Logical OID • No direct specification from OID to physical location • Need an index that maps an OID to the object’s actual location. • Physical OID • encodes physical location of the object • Physical OIDs typically have the following parts: • a volume or file identifier • a page identifier within the volume or file • an offset within the page
Pointer OID Pointer Swizzling Pointer Swizzling Object Object Main Memory Disk Space