2.1.2 Integrated Databases
A better alternative to a file processing system is an integrated database approach. In this environ-ment, all data belonging to an organization is stored in a single database. The database is not a mere collection of files; there is a relation between the files. Integration implies a logical relation-ship, usually provided through a common column in the Tables. The relationships are also stored within the database. A set of sophisticated programs known as a database management system (DBMS) is used to store, access and manipulate the data in the database. Details of data stor-age and maintenance are hidden from the user. The user interacts with the database through the DBMS. A user may interact either directly with the DBMS or via a program written in a program-ming language such as Visual C++, Java, Visual Basic or Visual C#. Only the DBMS can access the database. Large organizations employ database administrators (DBAs) to design and maintain large databases.
There are many advantages of using an integrated database approach over that of a file process-ing approach:
1) Data sharing: The data in the database is available to a large numbers of users who can access the data simultaneously, create reports and manipulate the data given proper authorization and rights.
2) Minimizing data redundancy: Since all the related data exists in a single data-base, there is a minimal need for data duplication. Duplication is needed to maintain rela-tionships between various data items.
3) Data consistency and data integrity: Reducing data redundancy will lead to data consistency. Since data is stored in a single database, enforcing data integrity becomes much easier. Furthermore, the inherent functions of the DBMS can be used to enforce integrity with minimum programming.
4) Enforcing standards: DBAs are charged with enforcing standards in an organization. The DBA takes into account the needs of various departments and balances them against the overall needs of the organization. The DBA defines various rules such as documentation standards, naming conventions, update and recovery procedures and so on. It is relatively easy to enforce these rules in a database system, since it is a single set of programs that is always interacting with the data files.
5) Improving security: Security is achieved through various means such as control-ling access to the database through passwords, providing various levels of authorization, data encryption, providing access to restricted views of the database and so on.
6) Data independence: Providing data independence is a major objective for any database system. Data independence implies that even if the physical structure of a database changes, applications are allowed to access the database the same way as before the changes were imple-mented. In other words, applications are immune to changes in the physical representation and access techniques.
The downside of using an integrated database approach has mainly to do with the exorbitant costs associated with it. The hardware, software and maintenance are expensive. Providing security, concurrency, integrity and recovery may further add to this cost. Furthermore, since a DBMS con-sists of a complex set of programs, trained personnel are needed to maintain it.