NoSQL Databases

In a software developer’s world, the word “database” usually means “SQL.” SQL stands for Structured Query Language and, for years, this language has been the de facto language of relational databases. This includes Microsoft SQL Server, PostgreSQL, MySQL, and Oracle.

These database have served us well for literally decades, but there’s something new on the horizon. These days, all the cool kids are using NoSQL databases. NoSQL databases are document based, which means that they don’t have a schema or rely on the time-tested Structured Query Language. This is somewhat difficult for many veteran programmers to process. A big question that’s immediately raised is, “How would one communicate with a database that doesn’t use SQL?”  The answer can vary between the many different databases out there, but we’ll use one in particular as an example: Mongo DB.

Mongo DB uses the popular Object Oriented language JavaScript to interact between the software and the developers. This gives the developer the powerful advantage of using JSON to pass data between the Mongo DB collections and the application interacting with the database.

Developers that have a basic grasp of Object Oriented programming should be able to pick up NoSQL databases very quickly. For example, the SQL query to create a database which looks like this: “CREATE TABLE User (Ident INT IDENTITY, FirstName VARCHAR(50), LastName VARCHAR(50))” can be written simply as this: “db.CreateCollection(‘User’).” Since there’s no schema to worry about, any data points can be added at-will within the Mongo DB collection.  For more SQL to Mongo DB translations check out this mapping chart on the MongoDB site.

NoSQL databases are already in use in many popular applications that are familiar to almost everyone. Facebook uses a NoSQL database called Cassandra and FourSquare uses the aforementioned MongoDB. The list is growing with the popularity of these databases increasing on a daily basis. And NoSQL databases like MongoDB are available for every major system, so it’s possible to put these into production today.


One thought on “NoSQL Databases

  1. Pingback: Sing's Tech Musings » Blog Archive » Getting started with MongoDB: How to install MongoDB on Windows OS using pre-built 32-bit / 64-bit binaries?

Leave a Comment

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s