Knowledge is no fun, unless you share it!!! :)

Wednesday, 22 June 2016

Database Evolution & History - RDBMS/ NoSQL



Database is the popular word we often listen in IT industry. In the IT world it is almost impossible to imagine an application without Database.So let's understand it.

Database is organized collection of the Data in such a way that it can interact with applications and even it could convert into the information by little efforts. Access of this database provides by the system called "Database Management System" (DBMS). DBMS contains integrated set of software that allows users to interact and connect with the one or more databases.
History
The development of database technology can be divided into three eras based on data model/ structure 
  • Navigational 
  • SQL/relational
  • Post-Relational

Navigational


The two main early navigational data models were the Hierarchical model, developed by IBM: It was the first ever “Invented” database by IBM in early 1960’s and more often used in IBM tools like Mainframe. This model stored data in the tree like structure and data is stored as Records (invented here) and linked to each others.

 

CODASYL (Conference on Data Systems Languages)

It was an organization founded in 1957 by the U.S. Department of Defense. Its mission was to develop computer programming languages..
CODASYL is remembered entirely for two activities –

  • Its work on the development of the COBOL language
  • Its activities in standardizing database interfaces
A number of vendors implemented database products. The best-known implementations were in Honeywell and General Electric - Integrated Data Store 

SQL/ Relational

In the early 70’s Edgar Codd worked at IBM has invented some rules to define Database and later on it became DBMS. DBMS changed the way to store/ manage database. It helped engineers to evolved new applications with the more crucial database part.

Instead of records being stored in some sort of linked list of free-form records as in CODASYL, Codd's idea was to use a "table" of fixed-length records, with each table used for a different type of entity. A linked-list system would be very inefficient when storing "sparse" databases where some of the data for any one record could be left empty. The relational model solved this by splitting the data into a series of normalized tables (or relations), with optional elements being moved out of the main table to where they would take up room only if needed. Data may be freely inserted, deleted and edited in these tables, with the DBMS doing whatever maintenance needed to present a table view to the application/user.
IBM has developed tool System R in middle of the 70’s and later on they developer database 2 (DB2) which is more popular to store data in RDBMS system


In 80’s and 90’s so many vendors comes with data DBMS tools i.e. Microsoft, Oracle, Tera Data etc.
In the rapidly changing world the tools enhances their capability but at the same time data increased exponentially in the online world.

According to the survey, Real-time world generates around 20PB of data every day. So now we have lots of data and if can convert it into the information and it will help people to take decisions.

 NoSQL (Non - Relational SQL):


 It is the latest concept comes for the data storage. Now a days we have data in such a large size that we can not handle in the relational model other way around I would say we can handle data but it's required so many processors which will increase cost exponentially and even it will take time (sometime in days) to process the data to convert it into information.



Data scientist comes with the idea of NoSQL. It doesn’t store data in RDBMS format but it use document oriented storage mechanism. Now a day to store log information. Hadoop Map Reduce is the classic example to store data in NoSQL format. It stored data in Hadoop File Storage System and Map Reduce function created to process data.

I will explain each of this database storage system separately in detail in my upcoming posts.

You can provide your feedback in comments section!!

Hope you enjoyed this article!!! 

Remember Knowledge is no Fun Unless you share it!!