Databases Reference
In-Depth Information
Table 4.1 NoSQL data architecture patterns—the most important patterns introduced by the NoSQL
movement, brief descriptions, and examples of where these patterns are typically used
Pattern name
Description
Typical uses
Key-value store
A simple way to associate a
large data file with a simple
text string
Dictionary, image store, document/file
store, query cache, lookup tables
Graph store
A way to store nodes and arcs
of a graph
Social network queries, friend-of-
friends queries, inference, rules sys-
tem, and pattern matching
Column family (Bigtable)
store
A way to store sparse matrix
data using a row and a column
as the key
Web crawling, large sparsely populated
tables, highly-adaptable systems, sys-
tems that have high variance
Document store
A way to store tree-structured
hierarchical information in a
single unit
Any data that has a natural container
structure including office documents,
sales orders, invoices, product descrip-
tions, forms, and web pages; popular
in publishing, document exchange, and
document search
Table 4.1 lists the significant data architecture patterns associated with the NoSQL
movement.
After reading this chapter, you'll know the main NoSQL data architectural pat-
terns, how to classify the associated NoSQL products and services with a pattern, and
the types of applications that use each pattern. When confronted with a new business
problem, you'll have a better understanding of which NoSQL pattern might help pro-
vide a solution.
We talked about data architecture patterns in chapter 3; to refresh your memory, a
data architecture pattern is a consistent way of representing data in a structure. This is
true for SQL as well as NoSQL patterns. In this chapter, we'll focus on the architec-
tural patterns associated with NoSQL. We'll begin with the simplest NoSQL pattern,
the key-value store, and then look at graph stores, column family stores, document
stores, and some variations on the NoSQL theme.
4.1
Key-value stores
Let's begin with the key-value store and then move on to its variants, and how this pat-
tern is used to cost-effectively solve a variety of business problems. We'll talk about
What a key-value store is
Benefits of using a key-value store
How to use a key-value store in an application
Key-value store use cases
We'll start by giving you a clear definition.
 
Search WWH ::




Custom Search