Monday, February 29, 2016

Three Database Revolutions

There are three database revolutions that happened so far.  
  • The first revolution was driven by the emergence of the electronic computer.
  • The second revolution by the emergence of the relational database.
  • The third revolution has resulted in an explosion of non-relational database alternatives driven by the demands of modern applications that require global scope and continuous availability.
Lets have a look on these three waves of database technologies and discuss the market and technology forces leading to today’s next generation databases.

1950-1972 (Pre - Relational)
  • 1951 - Magnetic Tape
  • 1952 - Magnetic Disk
  • 1961 - ISAM
  • 1965 - Hierarchical Model
  • 1968 - IMS
  • 1969 - Network Model
  • 1971 - IDMS
1972 - 2005 (Relational)
  • 1970 - Codd's Paper
  • 1974 - System R
  • 1978 - Oracle
  • 1980 - Commercial Ingres
  • 1981 - Informix
  • 1984 - DB2
  • 1987 - Sybase
  • 1989 - Postgres
  • 1989 - SQL Server
  • 1995 - MySQL
2005 - 2015 ( The Next Generation) 
  • 2003 - MarkLogic
  • 2004 - MapReduce
  • 2005 - Hadoop
  • 2005 - Vertica
  • 2007 - Dynamo
  • 2007 - Neo4J
  • 2008 - Cassandra
  • 2008 - HBase
  • 2008 - NuoDB
  • 2009 - MongoDB
  • 2010 - VoltDB
  • 2010 - Hana
  • 2011 - Riak
  • 2012 - Aerospike
  • 2014 - Spile Machine
In the 20 years following the widespread adoption of electronic computers, a range of increasingly sophisticated database systems emerged.emerged. Shortly after the definition of the relational model in 1970, almost every significant database system shared a common architecture. The three pillars of this architecture were the relational model, ACID transactions, and the SQL language.

However, starting around 2008, an explosion of new database systems occurred, and none of these
adhered to the traditional relational implementations. Few of the main reasons which led to the new generation of databases is because of 3 V's.
  • Volume - High Volume of Data. Ex: MB, GB, TB, Petabytes of data. 
  • Velocity - High Velocity of Data. Ex: Batch, Periodic, Near Real Time, Real Time
  • Variety - More Variety of Data. Ex: Database, Web, Photo, Audio, Video, Unstructured
In the next blog posts we will go through few of the popular Next Generation Databases, their overall architectures  and use cases where they will be used.