Database Reference
In-Depth Information
Chapter 1
Introduction to MongoDB
Imagine a world where using a database is so simple that you soon forget you're even
using it. Imagine a world where speed and scalability just work , and there's no need for
complicated configuration or setup. Imagine being able to focus only on the task at hand,
get things done, and then—just for a change—leave work on time. That might sound a bit
fanciful, but MongoDB promises to help you accomplish all these things (and more).
MongoDB (derived from the word humongous ) is a relatively new breed of database
that has no concept of tables, schemas, SQL, or rows. It doesn't have transactions,
ACID compliance, joins, foreign keys, or many of the other features that tend to cause
headaches in the early hours of the morning. In short, MongoDB is a very different
database than you're probably used to, especially if you've used a relational database
management system (RDBMS) in the past. In fact, you might even be shaking your head
in wonder at the lack of so-called “standard” features.
Fear not! In the following pages, you will learn about MongoDB's background and
guiding principles, and why the MongoDB team made the design decisions that it did.
We'll also take a whistle-stop tour of MongoDB's feature list, providing just enough detail
to ensure that you'll be completely hooked on this topic for the rest of the topic.
We'll start by looking at the philosophy and ideas behind the creation of MongoDB, as
well as some of the interesting and somewhat controversial design decisions. We'll explore
the concept of document-oriented databases, how they fit together, and what their strengths
and weaknesses are. We'll also explore JSON and examine how it applies to MongoDB.
To wrap things up, we'll step through some of the notable features of MongoDB.
Reviewing the MongoDB Philosophy
Like all projects, MongoDB has a set of design philosophies that help guide its
development. In this section, we'll review some of the database's founding principles.
Using the Right Tool for the Right Job
The most important of the philosophies that underpin MongoDB is the notion that one
size does not fit all . For many years, traditional relational (SQL) databases (MongoDB is
a document-oriented database) have been used for storing content of all types. It didn't
matter whether the data was a good fit for the relational model (which is used in all
RDBMS databases, such as MySQL, PostgresSQL, SQLite, Oracle, MS SQL Server, and
 
Search WWH ::




Custom Search