///
Relational Data Model – Architecture of Database Systems
H.Maurer and N.Scherbakov
Introduction
Software systems generally have an architecture, i.e. possessing of a structure (form) and organization (function). The former describes identifiable components and how they relate to one another structurally; the latter describes how the functions of the various structural components interact to provide the overall functionality of the system as a whole. Since a database system is basically a software system (albeit complex), it too possesses an architecture. A typical architecture must define a particular configuration of and interaction between data, software modules, meta-data, interfaces and languages (see Figure).
| DML | DDL | Languages |
| Meta-Data Database Schema | ||
| Software Modules | ||
| DBMS | ||
| Database | ||
| Data |
Figure: General database system architecture
The architecture of a database system determines its capability, reliability, effectiveness and efficiency in meeting user requirements. But besides the visible functions seen through some data manipulation language, a good database architecture should provide:
1. Independence of data and programs.
2. Ease of system design.
3. Ease of programming.
4. Powerful query facilities.
5. Protection of data.
The features listed above become especially important in large organizations where corporate data are held centrally. In such situations, no single user department has responsibility over, nor can they be expected to know about, all of the organization’s data. This becomes the job of a Database Administrator (DBA) who has a daunting range of responsibilities that include creating, expanding, protecting and maintaining the integrity of all data while addressing the interests of different present and future user communities. To create a database, a DBA has to analyze and assess the data requirements of all users and from these determine its logical structure (database schema). This, on the one hand, will need to be efficiently mapped onto a physical structure that optimises retrieval performance and the use of storage. On the other, it would also have to be mapped to multiple user views suited to the respective user applications. For large databases, DBA functions will in fact require the full time services of a team of many people. A good database architecture should have features that can significantly facilitate these activities.
Segundo o texto, em bancos de dados centralizados de grandes organizações, uma arquitetura adequada deve proporcionar, entre outras qualidades,