Published on March 10, 2014
Data Model • Relation • The Dominant Data Model of Last Couple Decade • Table, Column, Rows • Cannot Nest One Tuple Within Another • Aggregate • Collection of related object that we wish to treat as a unit • Consistency Unit
Relational Data Model
Aggregate Data Model
• Aggregate-Ignorant • Relational Data Model • Graph • Aggregate-Oriented • Key-Value • Document • Column Family Data Model Types
Distribution Model • Single Server • Sharding (Horizontal Scalability) • Put different data on different node. • Replication • Take the same data and copies it over multiple node.
Combining Sharding and Replication
Combining Sharding and Replication
Update Consistency • Write-Write Conflict • Lost Update • Pessimistic Consistency • Optimistic Consistency
Relaxing Consistency • Eventual Consistency • Quorums • CAP Theorem • Consistency • Availability • Partition Tolerance
Key-Value Group A
What's Key-Value Store • Simple Hash Table • Collection of Key-Value Pair • Associate Array • The Key Unique Within Collection
Basic Operation • Insert Pair • Delete Pair • Update Value Of Existing Pair • Find Value Associate With a Particular Key
Performance Factor • The efficiency of the hashing function. • The design of the keys and the size of the values being stored and retrieved. • The distribution of data across partitions. • The functional patterns that applications follow to store and retrieve data.
Storing All the Data in a Single Bucket
Terminology – Oracle vs. Riak
Some of The Popular Key-Value Databases • Redis • Riak • Memcache DB • BerkeleyDB • HamsterDB • Amazon DynamoDB • Project Voldemort
Key-Value Store Features • Consistency • Consistency is applicable only for operations on a single key • Eventually Consistent in Distribute Implementation • Transaction • Quorum • Query • Structure Of Data • Scaling • Sharding • CAP
Suitable Use Case • Storing Session Information • User Profiles, Preferences • Shopping Cart Data
When Not to Use • Relation Among Data • Multioperation Transactions • Query by Data • Operations by Sets
Distributed, Masterless, Highly-Available Key-Value Store
Redis Features • Extremely Fast! • Ability to store more than just strings • Persistence • Replication • Built in LUA support
History. The term NoSQL was used by Carlo Strozzi in 1998 to name his lightweight, Strozzi NoSQL open-source relational database that did not expose the ...
NoSQL Database Types. Document databases pair each key with a complex data structure known as a document. Documents can contain many different key-value ...
NoSQL dagegen kann mit vielen Schreib-/Leseanfragen umgehen. Beispiele dafür finden sich bei Digg, ... Key-Value Spaltenorientiert Dokumentorientiert;
Oracle NoSQL Database Key-Value Pairs. In its simplest form, Oracle NoSQL Database implements a map from user-defined keys (formatted as Strings) to opaque ...
Oracle NoSQL Database is a scalable, distributed NoSQL database, designed to provide highly reliable, flexible and available data management across a ...
I've been looking at the wikipedia page for NoSQL and it lists several variations on the Key/Value store database, but I can't find any details on what it ...
A scalable key-value database providing high availability, transactions, parallel query, and more.
A key-value store, or key-value database, is a data storage paradigm designed for storing, ... Another example of key-value database is Oracle NoSQL Database.
In the NoSQL database space, the key-value store (as opposed to Document, Graph, Object, XML stores) has the strongest reputation for being able to scale ...
NoSQL DEFINITION: Next Generation Databases mostly addressing some of the points: being non-relational, distributed, open-source and horizontally scalable