Characteristics of Database Approach
The main characteristics of the database approach are defined as follows:
· Data Redundancy is Minimized: Database system keeps data at one place in the database. The data is integrated into a single, logical structure. Different applications refer to the data from the centrally controlled location. The storage of the data, centrally, minimizes data redundancy.
· Data Inconsistency is Reduced: Minimizing data redundancy using database system reduces data inconsistency too. Updating of data values becomes simple and there is no disagreement in the stored values. E.g. students’ home addresses are stored at a single location and get updated centrally.
· Data is Shared: Data sharing means sharing the same data among more than one user. Each user has access to the same data, though they may use it for different purposes. The database is designed to support shared data. Authorized users are permitted to use the data from the database. Users are provided with views of the data to facilitate its use. E.g. the students’ home addresses stored in the database which is shared by student profile system and library system.
· Data Independence: It is the separation of data description (metadata) from the application programs that use the data. In the database approach, data descriptions are stored in a central location called the data dictionary. This property allows an organization’s data to change and evolve (within limits) without changing the application programs that process the data.
· Data Integrity is Maintained: Stored data is changed frequently for variety of reasons such as adding new data item types, and changing the data formats. The integrity and consistency of the database are protected using constraints on values that data items can have. Data constraint definitions are maintained in the data dictionary.
· Data Security is Improved: The database is a valuable resource that needs protection. The data base is kept secure by limiting access to the database by authorized personnel. Authorized users are generally restricted to the particular data they can access, and whether they can update it or not. Access is often controlled by passwords.
· Backup and Recovery Support: Backup and recovery are supported by the software that logs changes to the database. This support helps in recovering the current state of the database in case of system failure.
· Standards are Enforced: Since the data is stored centrally, it is easy to enforce standards on the database. Standards could include the naming conventions, and standard for updating, accessing and protecting data. Tools are available for developing and enforcing standards.
· Application Development Time is Reduced: The database approach greatly reduces the cost and time for developing new business applications. Programmer can focus on specific functions required for the new application, without having to worry about design, or low-level implementation details; as related data have already been designed and implemented. Tools for the generation of forms and reports are also available.
In addition to the advantages highlighted above, there are several other implications of using the database approach like provision of multiple-user interfaces, representation of complex relationships, concurrent data access etc. There are, however, some disadvantages of database systems over the file-based systems. The database systems are more vulnerable than file-based systems because of the centralized nature of a large integrated database. If a failure occurs, the recovery process is more complex and sometimes may result in lost transactions.
Data Models, Schema and Instances
The information stored inside a database is represented using data modelling. The data model describes the structure of the database. A data model consists of components for describing the data, the relationships among them, and the semantics of data and the constraints that hold data. Many data models exist based on the way they describe the structure of database. The data models are generally divided into three categories as follows:
· High level or conceptual Data Model,
· Representation or implementation Data Model, and
· Low level or physical Data Model
Schema is the logical structure of the database. A schema contains information about the descriptions of the database like the names of the record type, the data items within a record type, and constraints. A schema does not show the data in the database. The database schema does not change frequently.
Instances are the actual data contained in the database at a particular point of time. The content of the database may change from time to time.