GNU SQL is based on a client-server architecture for DBMS organizations. In fact, we support two kinds of "clients and servers" according to a way of mutual communications.
The set of processes operating on a data base may be divided into several layers depending on their distance from the data base. The closest or innermost layer is the SDTM layer. These processes provide the facilities of Sinchronization (two-phase predicate locks), Logical Log (the log of updates of logical level), Micro Log (the log for microoperations), Buffer (main memory bufferization, exchanges with disks, locks of pages), and Sorter (to make external sorts). SDTM also includes utilities to restore data base after failures and crashes and a run-time library for transactions. trhis library implements the external interface of SDTM. All processes of this layer communicate with message queues and shared memory.
|