|
What is MongoDB?
What is meant by NoSQL?
No "official" definition exists
.
- No SQL, or Not Only SQL
- Non-relational, distributed, open source, scalable
Does not use relational model
.
- No tables, rows, columns and relations
- Different models used:
- Column, document, key-value and graph
- Other models:
- Multimodel (OrientDB), Object (db4o), Grid/Cloud, XML (Berkeley DB XML), Multidimensional (GT.M), Multivalue (TigerLogic PICK)
No fixed schema
.
- Lowest unit of MongoDB data is a "document"
- Uses a JSON document as basis
- Allows considerable flexibility
- JSON is converted to BSON for storage
Driven by "big data"
.
- Scales extremely well
- Works well in clustered/cloud environment
- Google Bigtable
- Amazon SimpleDB
Examples
.
- MongoDB, CouchDB, RavenDB : Document
- Cassandra, Apache HBase (Hadoop) : Column
- Redis, Riak, DynamoDB : Key/Value
- Neo4j, Titan : Graph
|
|