ptg10805159750 ADatabase Library Chapter 20
located with only two disk accesses (see Litwin[ 1980 ]or Fagin et al.[ 1979 ]for details).
B-trees have the advantage of traversing the database in (sorted) key order (something
that we can’t do with thedb_nextrecfunction using a hash table.)20.5 Centralized or Decentralized?
Given multiple processes accessing the same database, we can implement the functions
in two ways:- Centralized. Have a single process that is the database manager,and have it be
the only process that accesses the database. The functions contact this central
process using some form of IPC. - Decentralized. Have each function apply the required concurrency controls
(locking) and then issue its own I/O function calls.
Database systems have been built using each of these techniques. Given adequate
locking routines, the decentralized implementation is usually faster,because IPC is
avoided. Figure20.4 depicts the operation of the centralized approach.
IPC I/O kernelindex file data filedb access
libraryuser processdb access
libraryuser process
centralized
db manageruser processFigure 20.4Centralized approach for database access