dark mode light mode Search Menu
Search

Non-Relational Databases

normanack on Flickr

As explained in the last issue, in a story about database design, non-relational databases are a new way to store data. Instead of SQL databases, where the structure of your data is broken up into bits based on the type of data (think company name versus company location where one company might have many locations). With non-relational databases, the complexity is not in the database structure, it’s in the chunks of data you store in the database.

For example, you might have one chunk of data for each company and each chunk of data would include all the office locations. Retrieving and displaying the locations involves grabbing the chunk of data, then digging out all the locations. A SQL database, in contrast, would have a table for company names and another table for all the locations for all companies; you’d match company names to locations with a database query to display all the locations for one company.

If you are interested to explore non-relational databases, here are a few worth downloading and trying out. Because this technology is five years old, or less, building complicated applications might require adjustments that make SQL databases a better option. However, non-relational databases are likely to dominate in a world where lots of data is collected then displayed based on what people want to see.

DynamoDB

A proprietary database offered by Amazon through its Amazon Web Services (AWS) cloud platform. You host your application on their cloud servers with your data stored in DynamoDB. Bigtable from Google works the same way but with their proprietary Google Application Engine (GAE) platform. Bigtable also is used to power Gmail and other Google applications.
http://aws.amazon.com/dynamodb/
https://developers.google.com/appengine/?csw=1
https://developers.google.com/appengine/articles/storage_breakdown?hl=en

MongoDB

An open source database that stores data in documents which are key:value pairs, for example, CompanyName:Acme. The structure of each document can vary from one document to another. CouchDB also stores data as documents. Both technologies are open source.
http://www.mongodb.org/
http://couchdb.apache.org/

Riak

This database stores data in a similar way to DynamoDB. It’s also interesting because it is written in Erlang instead of C or similar language.
http://docs.basho.com/riak/latest/
http://docs.basho.com/riak/latest/theory/why-riak/

Learn More

NoSQL

Their front page has a list of dozens of NoSQL database with links to each technology.
http://nosql-database.org/

Non-Relational Databases

A fairly quick overview of how NoSQL databases work and what they offer.
http://www.slideshare.net/ramtrilper/non-relational-databasesno-sql

Related Posts