Databases Reference
In-Depth Information
CHAPTER 1
Introduction
MongoDB is a powerful, flexible, and scalable data store. It combines the ability to
scale out with many of the most useful features of relational databases, such as secon-
dary indexes, range queries, and sorting. MongoDB is also incredibly featureful: it has
tons of useful features such as built-in support for MapReduce-style aggregation and
geospatial indexes.
There is no point in creating a great technology if it's impossible to work with, so a lot
of effort has been put into making MongoDB easy to get started with and a pleasure to
use. MongoDB has a developer-friendly data model, administrator-friendly configura-
tion options, and natural-feeling language APIs presented by drivers and the database
shell. MongoDB tries to get out of your way, letting you program instead of worrying
about storing data.
A Rich Data Model
MongoDB is a document-oriented database, not a relational one. The primary reason
for moving away from the relational model is to make scaling out easier, but there are
some other advantages as well.
The basic idea is to replace the concept of a “row” with a more flexible model, the
“document.” By allowing embedded documents and arrays, the document-oriented
approach makes it possible to represent complex hierarchical relationships with a single
record. This fits very naturally into the way developers in modern object-oriented lan-
guages think about their data.
 
Search WWH ::




Custom Search