All human activity is inextricably linkedwith a variety of information catalogs and databases. The library registry, notebook, addresses in a mobile phone or tablet - this is not a complete list of the structured information that we use. But computers love accuracy, so we’ll give a definition.
So, database (DB) - a set of logically interrelated data describing the information state of objects in various subject areas and processed by computer equipment.
Database management system is a software and language environment for creating, managing and processing information databases. Purpose of the DBMS:
- work with databases on the external (disks, tapes, etc.) and RAM;
- user sharing;
- change control, archiving and restoring databases;
- providing an access language for information processing;
- utilities for creating, modifying and managing databases.
Relational Management Systems
Since the advent of computer databases, many models of their work have been created, but relational model proved to be the most versatile.It is a linked set of information tables, which guarantees the integrity and minimal redundancy of information. The tabular model turned out to be applicable to most subject areas, and the market for relational database management systems began to grow at a rapid pace. The figure shows an example of the student base relational structure.
Все реляционные СУБД поддерживают ANSI стандарт SQL language and the basic principles of the relational model, which ensures the work of applications on different DBMS. Additionally, large DBMS have their own extensions SQL. Examples of database management systems for large projects are Microsoft SQL Server and ORACLE.
The relational model is successfully used in the development of Internet projects. Examples are the MySQL and PostgreSQL DBMS.
NoSQL technology
Increased information and complexityinterconnection has led to the emergence of new database management systems. Information has ceased to be independent of each other, and sometimes it is generally impossible to rigidly describe its structure. Relational databases can no longer handle such tasks. This led to the emergence of a new type of information databases and systems for managing them, which received the general name NoSQL (“no SQL”).
The main categories of NoSQL databases:
- "Key-Value". The most popular DBMS are Redis, Voldemort, Tokyo Cabinet and Dynomite.
- Clones DBMS BigTable. Developed by Google for internal use in a search engine. Officially BigTable It is not offered, but there is a DBMS on its basis. These are Hadoop, Hypertable and Cassandra.
- Document oriented. The most popular are Berkeley DB XML, MongoD, eXist and CouchDB.
- Databases based on graph theory. Used in Neo4j, Sones graphDB and AllegroGraph.
Future DBMS
The database management systems market continuesto develop and more and more inclined to use NoSQL solutions. Of course, a huge number of software systems of varying complexity are implemented on “classic” SQL, and such market giants as Microsoft and ORACLE stand behind it. But with a great deal of confidence, it can be assumed that NoSQL will be able to significantly press down the leaders in the development of complex information systems in the coming years.