Introduction to NoSQL
The NoSQL movement is changing the way we think about databases. Instead of requiring that database developers follow the rigid principles of the ACID model, NoSQL allows a great deal of flexibility that provides a tremendous efficiency boost. This comes, however, at the cost of reduced enforcement of traditional database constraints.
Abandoning ACID in Favor of BASE
The BASE model offers a completely different alternative to our traditional notions of database engineering. It abandons the relational database guiding principles of atomicity, consistency, isolation and durability in favor of a relaxed approach that allows the flexible, efficient storage of data.
NoSQL databases abandon the relational model in favor of the key/value store approach where the database uses a simple hash function to assign each key/value pair to a database server for later retrieval. NoSQL does not provide transactional functionality but it does allow for the efficient storage and retrieval of simple unstructured information.
BASE Model for Databases
The BASE Model of database development enforces three principles: Basic Availability, Soft state and Enhanced consistency. It is used primarily by unstructured databases, such as NoSQL.