Introduction to Database management systems (DBMS)
A database management system consists of
- a set of database files (whose entries look more or less like records), transformed via certain rules into
canonical form.
- This may involve creation of new auxiliary tables, splits of existing tables, etc., and organized by primary key.
- a set of keys, either with multilist links or inverted file lists.
- a query language.
The main issues for a database management system are
- handling equational queries, and
- optimizing boolean and equational queries.
An equational query of the form (K1.KV = K2.KV) is typically handled by iterating over all common key
values for K1, and checking the value of K2 in each case. For such queries, optimization is
frequently more concerned with avoiding "page faults" --- think of it as staying on a constant cylinder (as with cellular
lists) --- than with reducing the number of records examined, or using semantic information to simplify the query.