“MongoDB” as the
name suggest, is a database that can be used to store data and apply other
operations on the data later on. It is not a relational database like
(MySQL, Oracle, MSSQL etc), but it provides all the basic operations that eases
developer’s life in playing with the stored content. The name is a bit funny
for me when I first heard it, but really it is built on some serious concept that
opens number of questions of something alternative of relational databases. The concept is of NoSql / non-relational database.
MongoDB (from "humongous")
is a scalable, high-performance, open source, document-oriented
database. Written in C++
RDBMS has ruled the
database world alone for a long time and always remains the only option for
most of the software industry to go for it as their first option. Yes, lots of
questions are there to choose which RDBMS to use and how the data will be
structured within it. With some powerful concept of querying, maintain the
integrity, indexing of data etc within RDBMS how come MongoDB’s concept will
compete with it? What is the concept on which MongoDB is built? Is MongoDB
fully replaceable to RDBMS? Are there other databases built on the same
concept? Many more questions are there in this debate, so just have a look how
MongoDB is different from relational databases.
MongoDB store data in
documents. Yes, a document that have key-value pair. There is a predefined
structure of MongoDB that starts with Database -> Collections ->
Documents & -> Fields. So there is not any brainstorming sessions on how
to structure our data. Just answer “How many collections do we have, and what are they?
“.
One
of the most important features of MongoDB is that it provided Indexing on data.
This feature makes it different from other No SQL databases. It also support to
query data from database.
If you're moving to
MongoDB from a relational database, you'll find that many SQL queries translate
easily to MongoDB's document-based query language.
Other important features include Replication, Auto-Sharding, Batch Processing
etc. Detail of each feature will be part of other posts as soon as I explore them and create some examples.
rizzz86
No comments:
Post a Comment