A list of (possible) definitions for NoSQL (also referred to as NoSQL databases or NoSQL stores):
NoSQL is a term coined by Carlo Strozzi and repurposed by Eric Evans to refer to “some” storage systems. The NoSQL term should be used as in the Not-Only-SQL and not as No to SQL or Never SQL.
Exponential growth of newly created digital content
More value around data
Build value around data by connecting the dots
Connectedness
Information format
Data usage scenarios (plus open data)
NoSQL is a movement promoting a loosely defined class of non-relational data stores that break with a long history of relational databases. These data stores may not require fixed table schemas, usually avoid join operations and typically scale horizontally. Academics and papers typically refer to these databases as structured storage. Wikipedia.
Non-relational next generation operational datastores and databases - Dwight Merriman, CEO 10gen
Next Generation Databases mostly addressing some of the points: being non-relational, distributed, open-source and horizontal scalable. - nosql-databases.org
NoSQL is a term coined by Carlo Strozzi and repurposed by Eric Evans to refer to “some” storage systems. The NoSQL term should be used as in the Not-Only-SQL and not as No to SQL or Never SQL.
NoSQL is about choice
NoSQL is not about any one feature of any of the projects. NoSQL is not about scaling, NoSQL is not about performance, NoSQL is not about hating SQL, NoSQL is not about ease of use, NoSQL is not about sharding, NoSQL is not about throughput, NoSQL is not about speed, NoSQL is not about dropping ACID, NoSQL is not about Eventual Consistency, NoSQL is not about CAP, NoSQL is not about open standards, NoSQL is not about Open Source and NoSQL is most likely not about whatever else you want NoSQL to be about. NoSQL is about choice. - Jan Lehnardt, CouchDB
Why NoSQL?
Handling massive amounts of dataExponential growth of newly created digital content
More value around data
Build value around data by connecting the dots
Connectedness
Information format
Data usage scenarios (plus open data)
Fundamental papers
- Google BigTable
- Amazon Dynamo
- BASE: An ACID Alternative
- Brewster’s CAP theorem (pdf). Julian Browne’s article can be helpful too.
NoSQL databases
Columnar Stores or Wide Column Stores
- BigTable:
- Cassandra: a highly scalable second-generation distributed database, bringing together Dynamo’s fully distributed design and Bigtable’s ColumnFamily-based data model.
- HBase:
- Hypertable
Document stores or Document databases
- Colayer
- CouchDB
- FleetDB
- Jackrabbit
- Lotus Notes
- MongoDB
- OrientDB
- Raven DB
- ThruDB
- Terrastore
Graph databases
- AllegroGraph
- Bigdata
- Core Data
- DEX: a high-performance graph database written in Java and C++. Its main characteristic is its performance storage and retrieval for large graphs, in the order of billions of nodes, edges and attributes, implemented with specialized structures.
- Filament
- FlockDB
- HyperGraphDB
- InfiniteGraph
- InfoGrid
- Neo4j
- OpenLink Virtuoso
- Sones
- VertexDB
- Trinity: a graph database and computation platform over distributed memory cloud. As a database, it provides features such as highly concurrent query processing, transaction, consistency control. As a computation platform, it provides synchronous and asynchronous batch-mode computations on large scale graphs.
Key-Value Stores
- Amazon SimpleDB
- Azure Table Storage
- Berkeley DB
- Chordless
- Dynomite
- GenieDB: GenieDB is designed to be a pragmatic solution to a widespread class of data storage problems, with a high-performance native API alongside compatability with MySQL.
- GT.M / M.DB
- HamsterDB
- Hibari: Hibari is a production-ready, distributed, key-value, big data store. Hibari uses chain replication for strong consistency, high-availability, and durability. Hibari has excellent performance especially for read and large value operations.
- KAI
- KaTree
- Kumofs
- LightCloud
- Membase
- Memcachedb
- Mnesia
- NorthScale
- Orient Key/Value Server
- Pincaster
- PNUTS/Sherpa
- Project Voldemort: LinkedIn open source implementation of Amazon Dynamo key-value store
- Redis
- Riak: Dynamo-inspired key/value store that scales predictably and easily.
- Scalaris
- ScalienDB / Scalien Keyspace: a distributed, consistent key-value store
- Tokyo Cabinet
Multi-value databases
- OpenQM
- Rocket U2
Object databases
- Db4o
- GemStone/S
- KiokuDB
- InterSystems Caché
- Neo
- Objectivity/DB
- Perst
- Progress
- Versant
- ZODB
XML databases
- BerkleyDB XML
- EMC Documentum xDB
- eXist
- MarkLogic Server
- Sausalito: Sausalito powers XQuery in the Cloud
- Sedna
- Tamino
- Xindice
Unclassified
- CloudKit
- FluidDB
- Moneta
- Perservere