NoSQL databases continue to proliferate as the demand for Big Data solutions grows. While relational databases aren’t going away anytime soon, different data models require different types of solutions. As a result, several types of NoSQL databases have emerged, each with its own pros and cons.
“It’s important that you’re not just going with a traditional database because that’s what everyone else is using,” said Evaldo de Oliveira, business development director at FairCom. “Pay attention to what’s going on in the NoSQL world because there are some problems that SQL cannot handle.”
NoSQL databases have been gaining momentum because organizations want the ability to query unstructured and semi-structured data, and they want to take advantage of database technologies that were designed for the Web and Big Data. NoSQL solutions are generally open source, provide linear scalability across commodity hardware, and ensure high availability through distribution and replication. Many of them also store data in a schemaless manner.
The four major types of NoSQL databases are key-value stores, document stores, wide column stores, and graph stores. Some of them, particularly key-value stores, may be broken down further into subtypes depending on who is classifying them. It is also worth noting that some NoSQL databases span more than one category and some of them also support SQL queries.
For example, HPCC is an open-source computing platform originally developed and contributed to by LexisNexis Risk Solutions. It is programmable and supports different data models. LexisNexis Risk Solutions typically uses a row-oriented layout for its own data services, although HPCC also supports columnar and adjacency table (graph) layouts as well as multi-key retrieval, according to Flavio Villanustre, vice president of information security at LexisNexis Risk Solutions. HPCC also supports SQL queries.
Couchbase Server combines a key-value store with a JSON document store and caching. It is also a mobile JSON document store, said Rahim Yaseen, senior vice president of products at Couchbase. Couchbase Server combines elements of Memcached, the open-source, high-performance, distributed memory object caching system, with elements of the Apache CouchDB document store, along with proprietary enhancements.
Meanwhile, FairCom c-treeACE is a key-value store, but unlike most NoSQL databases that are non-transactional, c-treeACE is a fully consistent NoSQL transactional database that provides SQL capabilities on top of its NoSQL main core technologies. According to FairCom’s de Oliveira, c-treeACE combines the NoSQL benefits of high performance, low latency and precise data access control with the flexibility of SQL interfaces. The SQL support allows organizations to integrate with SQL environments such as reporting, BI and data warehouses.
Which NoSQL database or combination of databases organizations use varies, which has created a market for the expanding number of database types and hybrid implementations.