Sunday, February 17, 2013

NoSQL Databases: Key-Value and Document Stores

Both key-value and document data stores have arisen to support object and document storage and retrieval on a massive scale. In these databases, the schema is either non-existent or highly dynamic, allowing the developer to remove and modify fields that are stored as in a singular container or document. This article examines the major functionality of key-value stores and document stores by exploring several popular key-value and document stores including Membase, SimpleDB, CouchDB, MongoDB, and Terrastore. This article is the second part in a three part series providing a general overview of NoSQL databases.

Friday, February 8, 2013

NoSQL Databases: An Introduction

The explosion of Cloud Computing in the last decade has shifted the dynamics of data storage from large, redundant, and specialized static hardware to inexpensive, failure-prone, commodity hardware and virtual machines. Coupled with the rise of social networks featuring content-rich internet media, the traditional relational database management system (RDBMS) has had trouble responding to such dramatic changes. Where-as data normalization and ACID properties were once considered to be important to every well designed system, new web applications may give up ACID in exchange for low latency with massive data storage, leading to new eventually consistent systems of unnormalized data. The new breed of "NoSQL" databases utilized by these applications offer a small subset of the features found in a traditional relational database in exchange for low latency and trivial massive linear scaling. In this series, I am going to explore the basics of NoSQL through the exploration of the architectures typically employed by various NoSQL databases. This first article in the series will provide a high level view of all architectures of the three major architectures of NoSQL. I will explore the each architecture in greater detail in future articles.