Today saw the release of Spring Hadoop, the Spring Frameworks support for working with Hadoop. This is an addition to the Spring Data project that provides support for working with the now many non-relational data storage facilities available to application developers. These storage solutions are often termed NoSQL, Big Data, Big Table and Cloud Storage amongst many others. Probably the most common term used is NoSQL storage to distinguish these from relational databases. To try and help clarify the types of storage solutions available I have listed them as follows with example implementations of each.
Column Stores enable date to be stored in a large grid structure. Data is accessed based on column values using bespoke query syntax. Examples include Cassandra, Googles Big Table, Amazon Table Storage and Microsoft Azure Table Storage.
Blob Stores enable the storage of binary objects that are assigned a unique URL in store that can be used to access the data. Examples include Amazon’s Simple Storage Service (S3) and Microsoft Azure Blob storage.
Graph Storage enables data to be stored in a graph of related objects – think people with friends in Facebook. An example of graph storage is Neo4J.
Document Storage stores data in document form rather than individual values. The most popular example is MongoDB.
Key Value Storage typically used for caches and extremely fast data lookup. An example is Redis.
Hadoop a large distributed file store that facilitates the processing of this large scale data in an efficient manner.
So to summarise, with NoSQL there are a variety of different data stores available. These have evolved rapidly because when building applications today, the data can be categorised according to three dimensions: volume, velocity and variety. The velocity is the rate at which the data grows/changes. Based on your data requirements there is a suitable solution available that may well be a NoSQL solution. Many of these NoSQL data stores are discussed in detail in Learning Tree’s Cloud Computing course. If you are interested, why not consider attending.