Database

A database is an integrated collection of logically related records or files which consolidates records into a common pool of data records that provides data for many applications. A database is a collection of information that is organized so that it can easily be accessed, managed, and updated.

A Database Management System (DBMS) is software that organizes the storage of data. It controls the creation, maintenance, and the use of the database tables of an organization and its end users. It allows organizations to place control of organization wide database development in the hands of Database Administrators (DBAs) and other specialist. In large systems, a DBMS allows users and other software to store and retrieve data in a structured way.

Database management systems are categorized according to the database models that they support, such as the network model or relational model. The model tends to determine the query languages that are available to access the database. One commonly used query language is SQL, although SQL syntax and function can vary from one DBMS to another. A great deal of the internal engineering of a DBMS, is independent of the data model, and is concerned with managing factors such as performance, concurrency, integrity, and recovery from hardware failures. In these areas there are large differences between products.

Database Management System`s Components

  • Interface Drivers - A user or application program shall initiate either schema modification or content modification. These drivers are built on top of SQL. They provide methods to prepare statements execute statements, fetch results, etc. Examples: DDL, DCL, DML, ODBC, and JDBC. Some vendors provide language specific proprietary interfaces. For example MySQL provides drivers for PHP, Python, etc.
  • SQL Engine - This component is responsible for interpreting and executing the SQL query. It comprises of three major components
  • Transaction Engine - Transactions are sequence of operations that read or write database elements, which are grouped together.
  • Relational Engine - Relational objects such as Table, Index, and Referential integrity constraints are implemented in this component.
  • Storage Engine - This component is responsible to store and retrieve data records. It also provides mechanism to store Meta data information and control information such as undo logs, redo logs, lock tables, etc.

Primary Tasks of DBMS Packages

  • Database Development - It is used to define and organize the content, relationships, and structure of the data needed to build a database.
  • Database Interrogation - It can access the data in a database for information retrieval and report generation. End users can selectively retrieve and display information and produce printed reports and documents.
  • Database Maintenance - It is used to add, delete, update, correct, and protect the data in a database.
  • Application Development - It is used to develop prototypes of data entry screens, queries, forms, reports, tables, and labels for a prototyped application. Or use 4GL or 4th Generation Language or application generator to develop program codes.

Types of Databases


Operational Database

These databases store detailed data needed to support the operations of the entire organization. They are also called Subject Area Databases (SADB), Transaction Databases, and Production Databases.

  • Customer Databases
  • Personal Databases
  • Inventory Databases
  • Analytical Database

These databases stores data and information extracted from selected operational and external databases. They consist of summarized data and information most needed by an organizations manager and other end user. They may also be called multidimensional database, Management database, and Information database.

Data Warehouse

It stores data from current and previous years that has been extracted from the various operational databases of an organization. It is the central source of data that has been screened, edited, standardized and integrated so that it can be used by managers and other end user professionals throughout an organization.

Distributed Database

These are databases of local work groups and departments at regional offices, branch offices, manufacturing plants and other work sites. These databases can include segments of both common operational and common user databases, as well as data generated and used only at a user’s own site.

End-User Database

These databases consist of a variety of data files developed by end-users at their workstations. Examples of these are collection of documents in spreadsheets, word processing and even downloaded files.

External Database

These databases where access to external, privately owned online databases or data banks is available for a fee to end users and organizations from commercial services. Access to a wealth of information from external database is available for a fee from commercial online services and with or without charge from many sources in the internet.

Hypermedia Databases on the Web

These are set of interconnected multimedia pages at a web-site. It consists of home page and other hyperlinked pages of multimedia or mixed media such as text, graphic, photographic images, video clips, audio etc.

Navigational database

Traditionally navigational interfaces are procedural, though one could characterize some modern systems like XPath as being simultaneously navigational and declarative.

In-Memory Databases

It is a database management system that primarily relies on main memory for computer data storage. It is contrasted with database management systems which employ a disk storage mechanism. Main memory databases are faster than disk-optimized databases since the internal optimization algorithms are simpler and execute fewer CPU instructions. Accessing data in memory provides faster and more predictable performance than disk. In applications where response time is critical, such as telecommunications network equipment that operates 9-1-1 emergency systems, main memory databases are often used.

Document-oriented databases

database or an object database. As opposed to relational databases, document-based databases do not store data in tables with uniform sized fields for each record. Instead, each record is stored as a document that has certain characteristics. Any number of fields of any length can be added to a document. Fields can also contain multiple pieces of data.

Real-time databases

It is a processing system designed to handle workloads whose state is constantly changing. This differs from traditional databases containing persistent data, mostly unaffected by time. For example, a stock market changes very rapidly and is dynamic. Real-time processing means that a transaction is processed fast enough for the result to come back and be acted on right away. Real-time databases are useful for accounting, banking, law, medical records, multi-media, process control, reservation systems, and scientific data analysis. As computers increase in power and can store more data, they are integrating themselves into our society and are employed in many applications.

Security

Database Security denotes the system, processes, and procedures that protect a database from unintended activity.Security is usually enforced through access control, auditing, and encryption.

  • Access control ensures and restricts who can connect and what can be done to the database.
  • Auditing logs what action or change has been performed, when and by whom.

Encryption

Since security has become a major issue in recent years, many commercial database vendors provide built-in encryption mechanisms. Data is encoded natively into the tables and deciphered "on the fly" when a query comes in. Connections can also be secured and encrypted if required using DSA, MD5, SSL or legacy encryption standard. Enforcing security is one of the major tasks of the DBA.

Applications of Databases

Databases are used in many applications, spanning virtually the entire range of computer software. Databases are the preferred method of storage for large multiuser applications, where coordination between many users is needed. Even individual users find them convenient, and many electronic mail programs and personal organizers are based on standard database technology. Software database drivers are available for most database platforms so that application software can use a common Application Programming Interface to retrieve the information stored in a database. Two commonly used database APIs are JDBC and ODBC.

More Services