中文网站
  Advanced Search
Read the latest Blogs from IT professionals in the field. Read and write community created documents. Need IT help? Ask our staff. Connect with your peers. Check our Tech Shop for posters, books and software tools. Home

10.8 Database Systems: Data Dictionary Storage

1. The database also needs to store information about the relations, known as the data dictionary. This includes:

  • Names of relations.
  • Names of attributes of relations.
  • Domains and lengths of attributes.
  • Names and definitions of views.
  • Integrity constraints (e.g., key constraints).

plus data on the system users:

  • Names of authorized users.
  • Accounting information about users.

plus (possibly) statistical and descriptive data:

  • Number of tuples in each relation.
  • Method of storage used for each relation (e.g., clustered or non-clustered).

2. When we look at indices (Chapter 11), we'll also see a need to store information about each index on each relation:

  • Name of the index.
  • Name of the relation being indexed.
  • Attributes the index is on.
  • Type of index.

3. This information is, in itself, a miniature database. We can use the database to store data about itself,simplifying the overall structure of the system, and allowing the full power of the database to be used to permit fast access to system data.

4. The exact choice of how to represent system data using relations must be made by the system designer. One possible representation follows.

System-catalog-schema = (relation-name, number-attrs)
Attr-schema = (attr-name, rel-name, domain-type, position, length)
User-schema = (user-name, encrypted-password, group)
Index-schema = (index-name, rel-name, index-type, index-attr)
View-schema = (view-name, de nition)

  Database System Structure: