What is a database?
It is imply organized data.
A database is a collection of data( or facts) that are logically organized and can be easily searched or manipulated.
A structured collection of collection of records or data that is stored in a computer system.
It is in essence one or more multiple computer files that encode data in a highly structured format. Units of data within a database are generally called “records”. Each record is unique and is further broken down into a limited number of fields.
Databases can be differentiated according to the functions they perform or according to how they model data.
Analytic databases (OnlineAnalytical Processing OLAP)
They are primary static, read-only databases which store archived, historical data for analysis.
For example a company might store sales records over the last ten years in an analytic database and use that database to analyze marketing strategies in relationship to demographics.
On the web we often see analytic database in the form of inventory catalogs that usually hold descriptive information about all available inventory items.
Operational databases (Online transaction processing)
They are used to manage more dynamic bits of data. Operational databases allow users to do more than simply view archived data. They allow users to modify that data (add, change or delete data).
Operational databases are usually used to track real time information.
Database models
Typically for a given database, there is structural description of the type of facts held in a database.: this description is known as a schema. The schema describes the objects that are represented in the database, and the relationships among them.
There are a number of ways of organizing a schema, that is, of modeling the database structure.
These are known as database models. (or data models)
A data model
A data model is a description of both a container for data and a methodology for storing that container. Data models are abstractions, often mathematical algorithms and concepts. –They cannot really be touched.
The analysis and design of data models has been the cornerstone of the evolution of databases.
As models have advanced so has database efficiency.
The most common types of database models are:
The Hierarchical database
The Relational database
The Network database.
The Hierarchical Database Model
It defines hierarchically arranged data.
It organizes data in a tree-like structure, implying a single upward link in each record to describe the nesting, and a sort field to keep the records in a particular order.
To create links between these record types, this model uses a parent-child relationship whereby one child has one parent but a parent can have multiple children.
Parents and children are tied together by links called “pointers” (physical addresses inside the file system). A parent will have a list of pointers to their children.
This child/parent rule assures that data is systematically accessible, to get to a low level table you need to start at the root and work your way down through the tree until you reach your target.
The hierarchical database model creates repetition of data within the database i.e data redundancy.
This database can only handle one-to-many relationships well but do not handle many-to-many relationships; however in many cases you would want the child be related to more than one parent.
Network Database Model
Some data are more naturally modeled with more than one parent per child relationship, for example a student can take four or more courses.
In a network database, each record may be linked to other records, in a flexible way. A network database allows many-to-many relationships. Specifically, the network model solves the problem of data redundancy by representing relationships in terms of sets rather than hierarchical.
Relational Database Model
It was developed by Dr. E. F. Codd in the 1960’s who was looking for ways to solve the problems with the existing models. The models was built on mathematical concepts.
At the core of the relational model is the concept of a table (also called a relation) in which all data is stored. Each table is made up of records (horizontal rows known as tuples) and fields
(vertical columns known as attributes)
A relational database contains tables which are basically descriptions of data. Tables in turn contain contents which is the actual data. By using a common identifier between tables it is possible to relate one table to another. E.g you have a table that contains data about items sold in a store today. You also have tables that give you details about the items and the vendors that sold them to you. If you want to find out how much of each vendors’ items you will have to relate the sales table, the items table and the vendors table by a common field they all share.
This is relating.
Database Management Systems
A database management system is the category of computer software programs, used for creating, organizing, retrieving, analyzing, analyzing and sorting information in computer based databases. Companies have many uses for accurate , comprehensive databases.
Firms commonly maintain databases of clients, vendors, employees, employees, inventory supplies, product orders, service requests, etc.
A database system that can handle all the relevant attributes of a type of data and to provide the desired methods for analyzing the data is an essential management tool for all businesses.
Components of a Database Management System
Data dictionary- contains the names and description of all the data elements with the database.
Data language- Required to place data in the data dictionary.
Teleprocessing monitor- Refers to a software package that controls communication between a database and remote terminals.
Security software- provides a variety of tools to safeguard databases from unauthorized access.
Application Development Software- a set of programs designed to help programmers develop application programs that use the database
Activating recovery system- provides the database manager with tools to make copies of the database which can be used in any case.