The End of Relational Databases Domination

The End of Relational Databases Domination

Copyright: © 2018 |Pages: 33
DOI: 10.4018/978-1-5225-3385-6.ch001
OnDemand:
(Individual Chapters)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

The chapter gives an overview of the three main stages of database development: hierarchical and network database models, relational database model, and NoSQL databases. It gives a short overview of the pillars of relational databases: relational data model, ACID (atomicity, consistency, isolation, and durability) properties of a transaction, and SQL (structured query language). Also, the concepts that make the base for NoSQL database development are explained, including the CAP (Consistency, Availability, Partitioning) theorem, the BASE (Basically Available, Soft-state, Eventually consistent) approach, and the sharding phenomenon. At last, the limitations of relational databases which led to the development of NoSQL databases are discussed.
Chapter Preview
Top

Three Stages In Database Development

The very first attempt of the manual filing system digitalization was related to the file-based approach (Figure 1). The file-based approach translated manual file organization (labeled files stored in cabinets) into digital files (Figure 1). However, this approach had two main drawbacks:

  • Data definition was inseparable from application programs.

  • Data could be accessed and manipulated only through application programs.

The consequences were:

  • Any change of file structure forced modifications in all the programs that used that file and resulted with additional programming time and effort.

  • Difficulties in combining data from multiple sources caused a high level of redundancy in the file based approach, so the same data was stored in different location (poor data security and consistency).

  • Files which were created using one programming language could not be accessed by any other programming language.

It became obvious that inseparability of data and application programs caused huge maintenance problems in file-based systems. Thus, a new database approach was based on the separation of data from the application programs. The result was the possibility of data abstraction (e.g., the possibility to present a logical view of data without knowing its physical structure). This means that, if data structures are changed, through adding new elements or modifying existing components, the application programs that do not directly work with changed data stay unaffected. Since databases enabled the organization and integration of data independently of application programs, they allowed different applications and programming languages to work with the same data.

Figure 1.

File-based vs. database approach

978-1-5225-3385-6.ch001.f01

A database can be defined as a shared, integrated computer structure that stores a collection of data and metadata of interest to the end user, through which the user data is integrated and managed (Coronel, Morris & Rob, 2011).

Database development can be analyzed through three main stages:

  • Stage One: Hierarchical and network database models (1968–1971).

  • Stage Two: Relational database model started in 1970 with Edgar Codd’s paper (Codd, 1970).

  • Stage Three: NoSQL databases started in 2005 with Hadoop’s project (Harrison, 2015).

Complete Chapter List

Search this Book:
Reset