SlideShare ist ein Scribd-Unternehmen logo
1 von 74
Downloaden Sie, um offline zu lesen
Rise
Arnd Kleinbeck
of
NoSQL
TheRise
Arnd Kleinbeck - September 2013
1
2
History
3
1980
1990
2000
2010
Rise of
RDBMS
4
RDBMS
Persistence
Integration
SQL
ACID
Transactions
Tooling
5
Order: 4711
Customer: Max
Payment: Credit Card
Line items:
405 235 001
540 987 326
6
7
Impedance
Mismatch
8
1980
1990
2000
2010
Rise of
RDBMS
Rise of
OODBMS
9
1980
1990
2000
2010
Rise of
RDBMS
Rise of
OODBMS
RDBMS
Dominance
10
A New Era
11
600.000.000
tweets per day
12
1.100.000.000
active users per month
13
Not only size matters...
DataVolumes grow exponentially
Data gets more connected
Semi-Structured/ Unstructured Data
14
Lots of
Traffic
15
16
17
SCALING
UP SCALING
OUT
18
BigTable
Dynamo
19
1980
1990
2000
2010
Rise of
RDBMS
Rise of
OODBMS
RDBMS
Dominance
Rise of
NoSQL
20
Definition
21
„Not only SQL“
22
Characteristics
non relational
schemaless
open source
cluster
friendly
21st Century
Web
no
joins
23
Differences
data model
APIs
consistency
data
distribution
persistence
24
Data Models
25
26
Document
Column
Family
Graph Key-Value
27
Key Value
28
Key-Value
153245
153246
153247
......
29
http://www.oredev.org/videos/nosql--the-new-generation-of-agile-databases
Key-Value
30
KeyValue Store Characteristics
Most simple data model
DB does not care about data types
Similar to persistent hash map
Fast lookups
Easy to distribute
Inspired by Amazon Dynamo paper
Restricted possibilities of querying
31
Open Source Advanced KeyValue Store
In-Memory Store with optional durability
Knows types like strings, hashes, lists, sets
BSD License
Implemented in C
Very small footprint (20k LOC for rel. 2.2)
APIs for C/C++, C#, Closure, Lisp, Erlang, Go, Haskell,
Java, JavaScript, Objective-C, Perl, PHP, Python, Ruby, ...
Used at Twitter, Instagram, flickr, stackoverflow, ...
32
Open Source KeyValue Store
Highly available and fault-tolerant
Basho Technologies
Apache License
Implemented in Erlang
APIs for Java, Erlang, Ruby, Php, Python, Closure, C#,
C/C++, HTTP, Node.js, Perl, Scala, Smalltalk, ...
Used at Mozilla, Comcast,AOL
33
Open Source KeyValue Store
Big, distributed, persistent, fault-tolerant hash table
Developed by LinkedIn
Implemented in Java
Apache 2.0 License
Dynamo Scale Out
Used at LinkedIn
34
Document
35
{
	
  	
  	
  	
  	
  	
  "id":	
  "993174208"
	
  	
  	
  	
  	
  	
  "tex":	
  "texture	
  wood	
  pile"
	
  	
  	
  	
  	
  	
  "in_reply_to_screen_name":	
  "akleinbe",	
  
	
  	
  	
  	
  	
  	
  "in_reply_to_status_id_str":	
  null,	
  
	
  	
  	
  	
  	
  	
  "id_str":	
  "54691802283900928",	
  
	
  	
  	
  	
  	
  	
  "entities":	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "user_mentions":	
  [
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  {
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "indices":	
  [
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  3,	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  19
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  ],	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "screen_name":	
  "PostGradProblem",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "id_str":	
  "271572434",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "name":	
  "PostGradProblems",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "id":	
  271572434
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  }
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  ],	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "urls":	
  [	
  ],	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "hashtags":	
  [	
  ]
	
  	
  	
  	
  	
  	
  }
}
	
  
{
	
  	
  	
  	
  	
  	
  "id":	
  "596229751"
	
  	
  	
  	
  	
  	
  "customer_id":	
  "RT	
  @PostGradProblem:	
  In	
  preparation	
  for	
  the	
  NFL	
  
lockout,	
  I	
  will	
  be	
  spending	
  twice	
  as	
  much	
  time	
  analyzing	
  my	
  fantasy	
  
baseball	
  team	
  during	
  ...",	
  
	
  	
  	
  	
  	
  	
  "truncated":	
  true,	
  
	
  	
  	
  	
  	
  	
  "in_reply_to_user_id":	
  null,	
  
	
  	
  	
  	
  	
  	
  "in_reply_to_status_id":	
  null,	
  
	
  	
  	
  	
  	
  	
  "favorited":	
  false,	
  
	
  	
  	
  	
  	
  	
  "source":	
  "<a	
  href="http://twitter.com/"	
  rel="nofollow">Twitter	
  
for	
  iPhone</a>",	
  	
  	
  	
  	
  	
  	
  "in_reply_to_screen_name":	
  null,	
  
	
  	
  	
  	
  	
  	
  "in_reply_to_status_id_str":	
  null,	
  
	
  	
  	
  	
  	
  	
  "id_str":	
  "54691802283900928",	
  
	
  	
  	
  	
  	
  	
  "entities":	
  {	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "user_mentions":	
  [
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  {	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "indices":	
  [
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  3,	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  19
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  ],	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "screen_name":	
  "PostGradProblem",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "id_str":	
  "271572434",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "name":	
  "PostGradProblems",	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "id":	
  271572434
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  }	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  ],	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "urls":	
  [	
  ],	
  
	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  	
  "hashtags":	
  [	
  ]
	
  	
  	
  	
  	
  	
  }
}
	
  
{
	
  	
  "id":	
  "3452094105"
	
  	
  "user":	
  {
	
  	
  	
  	
  	
  "notifications":	
  null,	
  
	
  	
  	
  	
  	
  "profile_use_background_image":	
  true,	
  
	
  	
  	
  	
  	
  "statuses_count":	
  31,	
  
	
  	
  	
  	
  	
  "profile_background_color":	
  "C0DEED",	
  
	
  	
  	
  	
  	
  "followers_count":	
  3066,	
  
	
  	
  	
  	
  	
  "profile_image_url":	
  "http://a2.twimg.com/profile_images/1285770264/
PGP_normal.jpg",	
  
	
  	
  	
  	
  	
  "listed_count":	
  6,	
  
	
  	
  	
  	
  	
  "profile_background_image_url":	
  "http://a3.twimg.com/a/1301071706/
images/themes/theme1/bg.png",	
  
	
  	
  	
  	
  	
  "description":	
  "",	
  
	
  	
  	
  	
  	
  "screen_name":	
  "PostGradProblem",	
  
	
  	
  	
  	
  	
  "default_profile":	
  true,	
  
	
  	
  	
  	
  	
  "verified":	
  false,	
  
	
  	
  	
  	
  	
  "time_zone":	
  null,	
  
	
  	
  	
  	
  	
  "profile_text_color":	
  "333333",	
  
	
  	
  	
  	
  	
  "is_translator":	
  false,	
  
	
  	
  	
  	
  	
  "profile_sidebar_fill_color":	
  "DDEEF6",	
  
	
  	
  	
  	
  	
  "location":	
  ""	
  }
}
Document
36
Document Store Characteristics
You can query into document structure
You can use natural aggregates as documents
You can retrieve portions of a document
You can update portions of a document
You can have links between documents
Compared to key value data model the document is more
transparent
No schema / implicit schema
Some queries are a pain in the neck!
37
Open Source Document Store
„Most popular NoSQL database“
Stores JSON like documents
Implemented in C++
GNU AGPL License
APIs for C/C++, C#, Go, Erlang, Java, JavaScript, Node.js,
Perl, PHP, Python, Ruby, Scala, HTTP/REST
Used at Craigslist, eBay, Foursquare, SourceForge,
NYT, ...
38
Open Source Document Store
Ease of Use
No update locks
Stores JSON like documents
Implemented in Erlang
Apache License
APIs for JavaScript, MapReduce, HTTP/REST
Used at BBC, Credit Suisse, Meebo, ...
39
Open Source Distributed Document Store
Optimized for interactive applications
Merged from Membase and CouchDB
Implemented in C++, Erlang, C
Apache License / Proprietary
APIs for Java, .NET, PHP, Ruby, Python, C
Used at AOL, Cisco, LinkedIn, Salesforce.com, Zynga, ...
40
Schemaless
41
Schemaless
Schemaless is one of the main reasons of interest
in NoSQL databases
Schemaless reduces ceremony
Schemaless increases flexibility
BUT...
42
Schemaless means
implicit schema
To query specific attributes
you have to know their names
Schema Managment is shifted from db to code
http://martinfowler.com/articles/schemaless/
43
Column
Family
44
Column-Family
http://www.oredev.org/videos/nosql--the-new-generation-of-agile-databases
45
more complicated data model
rich structure
single key (row key)
easy/ fast access to columns/column families in a row
rows can contain 100s or 1000s of columns
aggregate oriented
Column Family Characteristics
46
Open Source Wide Column Store
Supports multi data center replication
Good for distributed DBs with massive write loads
Implemented in Java
Apache License 2.0
APIs for C#, C++, Clojure, Erlang, Go, Haskell, Java,
JavaScript, Perl, PHP, Python, Ruby, Scala
Used at CERN, Facebook, Netflix, Rackspace,
SoundCloud,Twitter ...
47
Open Source Column Oriented Database
Part of Hadoop, Inspired by Googles BigTable
Implemented in Java
Apache License 2.0
APIs for Restful HTTP,Thrift, C/C++, C#, Groovy, Java,
PHP, Python, Scala
Used at Amazon,Adobe,AOL, Cloudspace, eBay,
Facebook, IBM, Last.fm, LinkedIn, Spotify,Yahoo!, ...
48
Graph
49
Graph
http://www.neo4j.org/learn/graphdatabase
50
51
Graph DBs disassemble things in fragments and
relations
You can do very interesting queries on graph
structures - things you can not event think of in SQL
Good for complex graph structured data
Fast lookups, fast traversing
Whiteboard Friendly
Graph DB Characteristics
52
Open Source Graph Database
Embedded, disk-based, fully transactional
Implemented in Java
GPLv3 and AGPLv3 / commercial
APIs for .NET, Clojure, Go, Groovy, Java, JavaScript,
Perl, PHP, Pyhton, Ruby, Scala
Used at Adobe, Cisco,Telekom...
53
Open Source Document Database
with Graph oriented extensions
Supports SQL (without join) as query language
Supports ACID transactions
Implemented in Java
Apache License 2.0
Commercial support available
APIs for HTTP/REST, Java, JavaScript, Scala, PHP,
Ruby, .NET, Clojure, Node.js, Python, ...
Used at SKY, Spielo, UltraDNS...
54
Scaling out
55
Replication
Master
Slave 1 Slave 2 Slave 3
write
read
56
Sharding
Shard 1 Shard 2 Shard 3
Router
writeread
57
Hashing Problems
common way of choosing a server:
server = hash(key) mod n
Every object
gets hashed to
a new location!
What happens, if a server goes down?
58
Consistent Hashing
Use same hash function for both objects and servers
shards:A, B, C
objects: 1, 2, 3, 4
http://www.tom-e-white.com/2007/11/consistent-hashing.html
59
CAP Theorem
C
A
P
Availability
Partition
Tolerance
Consistency
http://www.cs.berkeley.edu/~brewer/cs262b-2004/PODC-keynote.pdf
60
BASE (vs.ACID)
Basical Availability
Soft State
Eventual Consistency
http://www.allthingsdistributed.com/2008/12/eventually_consistent.html
http://www.infoq.com/articles/pritchett-latency
61
Wrap Up
62
RDBMS will not die
Use a relational database
unless you have good reason not to
63
RDBMS have their limits
Vertical scaling is expensive and has hard limits
Horizontal scaling is not possible/ limited
Joins on big and distributed tables too
expenisve/ too slow
Rigid Schema inappropriate for semi
structured/dynamic data (sparse tables)
Consistency is higher rated than availability
64
NoSQL come to the rescue
Distribution and scalability are fundamental
design goals of NoSQL DBs
Tradeoff between Consistency,Availability and
horizontal scalability (CAP Theorem, BASE)
Small footprint in favor of ease of use
Outstandingly proven in practice (Google,
Amazon, Facebook, LinkedIn,Twitter, ...)
65
There are cons too
Broad spectrum of products is difficult to
understand
You have to get used to designing models for
Key/Value or Column Family stores
Mostly no ad hoc queries
No standards - no portability
Sometimes poor documentation
Few commercial support offers
66
RDBMS vs. NoSQL
think about data think about queries
redundancy is bad redundancy is ok
indexes managed by DB manage own indexes
query over relations no joins
always exact results results may be out of date
SQL proprietary APIs
67
Size
Complexity
Key
Value
Column
Family
Document
Graph
RDBMS
68
What‘s next?
69
Polyglot Persistence
NoSQL will break the relational dominance unlike the
OODBMSs in the 80ies
RDBMS is not the one and only option any more
Select the storage technology that best fits your
current situation
Enterprises will use different storage technologies for
different kinds of data
DB is no integration point any more
Apps talk via WebServices and encapsulate their
individual data storage technologies
70
NewSQL
The answer of traditional RDBMS vendors to the great
success of NoSQL
Improved RDBMS offer more features and better
scalability
Oracle launches Oracle NoSQL, their own NoSQL DB
based upon a revised Berkley DB
Oracle, Microsoft, Sybase, IBM, Greenplum, Pervuasive
already have a tight Hadoop Integration
„Can‘t fight it? Embrace it!“
71
Links
72
Amazon Dynamo Paper
http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/
decandia07dynamo.pdf
Google Big Table Paper
http://static.googleusercontent.com/external_content/
untrusted_dlcp/research.google.com/de//archive/bigtable-
osdi06.pdf
NoSQL Archive
http://nosql-database.com
DB Engines Ranking
http://db-engines.com/en/ranking
Recommended Reads
73
Thx!
Arnd Kleinbeck
Senior Software Architect
Business Division Applications
@akleinbe
74

Weitere ähnliche Inhalte

Was ist angesagt?

Evolving your Data Access with MongoDB Stitch
Evolving your Data Access with MongoDB StitchEvolving your Data Access with MongoDB Stitch
Evolving your Data Access with MongoDB StitchMongoDB
 
The Ring programming language version 1.5.3 book - Part 43 of 184
The Ring programming language version 1.5.3 book - Part 43 of 184The Ring programming language version 1.5.3 book - Part 43 of 184
The Ring programming language version 1.5.3 book - Part 43 of 184Mahmoud Samir Fayed
 
Dominando o Data Binding no Android
Dominando o Data Binding no AndroidDominando o Data Binding no Android
Dominando o Data Binding no AndroidNelson Glauber Leal
 
Streaming Data Pipelines with MongoDB and Kafka at ao.com
Streaming Data Pipelines with MongoDB and Kafka at ao.comStreaming Data Pipelines with MongoDB and Kafka at ao.com
Streaming Data Pipelines with MongoDB and Kafka at ao.comMongoDB
 
Creating a Single View: Data Design and Loading Strategies
Creating a Single View: Data Design and Loading StrategiesCreating a Single View: Data Design and Loading Strategies
Creating a Single View: Data Design and Loading StrategiesMongoDB
 
Desenvolvimento web com Ruby on Rails (extras)
Desenvolvimento web com Ruby on Rails (extras)Desenvolvimento web com Ruby on Rails (extras)
Desenvolvimento web com Ruby on Rails (extras)Joao Lucas Santana
 

Was ist angesagt? (6)

Evolving your Data Access with MongoDB Stitch
Evolving your Data Access with MongoDB StitchEvolving your Data Access with MongoDB Stitch
Evolving your Data Access with MongoDB Stitch
 
The Ring programming language version 1.5.3 book - Part 43 of 184
The Ring programming language version 1.5.3 book - Part 43 of 184The Ring programming language version 1.5.3 book - Part 43 of 184
The Ring programming language version 1.5.3 book - Part 43 of 184
 
Dominando o Data Binding no Android
Dominando o Data Binding no AndroidDominando o Data Binding no Android
Dominando o Data Binding no Android
 
Streaming Data Pipelines with MongoDB and Kafka at ao.com
Streaming Data Pipelines with MongoDB and Kafka at ao.comStreaming Data Pipelines with MongoDB and Kafka at ao.com
Streaming Data Pipelines with MongoDB and Kafka at ao.com
 
Creating a Single View: Data Design and Loading Strategies
Creating a Single View: Data Design and Loading StrategiesCreating a Single View: Data Design and Loading Strategies
Creating a Single View: Data Design and Loading Strategies
 
Desenvolvimento web com Ruby on Rails (extras)
Desenvolvimento web com Ruby on Rails (extras)Desenvolvimento web com Ruby on Rails (extras)
Desenvolvimento web com Ruby on Rails (extras)
 

Ähnlich wie The Rise of NoSQL

Blazing Fast Analytics with MongoDB & Spark
Blazing Fast Analytics with MongoDB & SparkBlazing Fast Analytics with MongoDB & Spark
Blazing Fast Analytics with MongoDB & SparkMongoDB
 
MongoDB and Content Delivery at Aviary by Nir Zicherman and Jack Sisson
MongoDB and Content Delivery at Aviary by Nir Zicherman and Jack SissonMongoDB and Content Delivery at Aviary by Nir Zicherman and Jack Sisson
MongoDB and Content Delivery at Aviary by Nir Zicherman and Jack SissonHakka Labs
 
Content Delivery at Aviary - NYC MUG 11/19/13
Content Delivery at Aviary - NYC MUG 11/19/13Content Delivery at Aviary - NYC MUG 11/19/13
Content Delivery at Aviary - NYC MUG 11/19/13MongoDB
 
Document Model for High Speed Spark Processing
Document Model for High Speed Spark ProcessingDocument Model for High Speed Spark Processing
Document Model for High Speed Spark ProcessingMongoDB
 
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...Frédéric Harper
 
Montreal Sql saturday: moving data from no sql db to azure data lake
Montreal Sql saturday: moving data from no sql db to azure data lakeMontreal Sql saturday: moving data from no sql db to azure data lake
Montreal Sql saturday: moving data from no sql db to azure data lakeDiponkar Paul
 
How Signpost uses MongoDB for Tracking and Analytics
How Signpost uses MongoDB for Tracking and AnalyticsHow Signpost uses MongoDB for Tracking and Analytics
How Signpost uses MongoDB for Tracking and Analyticsmattinsler
 
MongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and ImplicationsMongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and ImplicationsMongoDB
 
D3.js: Data Visualization for the Web
D3.js: Data Visualization for the Web D3.js: Data Visualization for the Web
D3.js: Data Visualization for the Web Outliers Collective
 
Building LinkedIn's Learning Platform with MongoDB
Building LinkedIn's Learning Platform with MongoDBBuilding LinkedIn's Learning Platform with MongoDB
Building LinkedIn's Learning Platform with MongoDBJake Dejno
 
Semi Formal Model for Document Oriented Databases
Semi Formal Model for Document Oriented DatabasesSemi Formal Model for Document Oriented Databases
Semi Formal Model for Document Oriented DatabasesDaniel Coupal
 
Crafting Evolvable Api Responses
Crafting Evolvable Api ResponsesCrafting Evolvable Api Responses
Crafting Evolvable Api Responsesdarrelmiller71
 
Eagle6 mongo dc revised
Eagle6 mongo dc revisedEagle6 mongo dc revised
Eagle6 mongo dc revisedMongoDB
 
Eagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessEagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessMongoDB
 
Keynote - Speaker: Grigori Melnik
Keynote - Speaker: Grigori Melnik Keynote - Speaker: Grigori Melnik
Keynote - Speaker: Grigori Melnik MongoDB
 
Windows8 lightningtalk
Windows8 lightningtalkWindows8 lightningtalk
Windows8 lightningtalkcarlspierre
 

Ähnlich wie The Rise of NoSQL (20)

Blazing Fast Analytics with MongoDB & Spark
Blazing Fast Analytics with MongoDB & SparkBlazing Fast Analytics with MongoDB & Spark
Blazing Fast Analytics with MongoDB & Spark
 
MongoDB and Content Delivery at Aviary by Nir Zicherman and Jack Sisson
MongoDB and Content Delivery at Aviary by Nir Zicherman and Jack SissonMongoDB and Content Delivery at Aviary by Nir Zicherman and Jack Sisson
MongoDB and Content Delivery at Aviary by Nir Zicherman and Jack Sisson
 
Content Delivery at Aviary - NYC MUG 11/19/13
Content Delivery at Aviary - NYC MUG 11/19/13Content Delivery at Aviary - NYC MUG 11/19/13
Content Delivery at Aviary - NYC MUG 11/19/13
 
Data exchange formats
Data exchange formatsData exchange formats
Data exchange formats
 
Document Model for High Speed Spark Processing
Document Model for High Speed Spark ProcessingDocument Model for High Speed Spark Processing
Document Model for High Speed Spark Processing
 
Spark and MongoDB
Spark and MongoDBSpark and MongoDB
Spark and MongoDB
 
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
Windows 8 Pure Imagination - 2012-11-24 - Getting your HTML5 game Windows 8 r...
 
Montreal Sql saturday: moving data from no sql db to azure data lake
Montreal Sql saturday: moving data from no sql db to azure data lakeMontreal Sql saturday: moving data from no sql db to azure data lake
Montreal Sql saturday: moving data from no sql db to azure data lake
 
How Signpost uses MongoDB for Tracking and Analytics
How Signpost uses MongoDB for Tracking and AnalyticsHow Signpost uses MongoDB for Tracking and Analytics
How Signpost uses MongoDB for Tracking and Analytics
 
MongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and ImplicationsMongoDB Schema Design: Practical Applications and Implications
MongoDB Schema Design: Practical Applications and Implications
 
Why no sql
Why no sqlWhy no sql
Why no sql
 
D3.js: Data Visualization for the Web
D3.js: Data Visualization for the Web D3.js: Data Visualization for the Web
D3.js: Data Visualization for the Web
 
Building LinkedIn's Learning Platform with MongoDB
Building LinkedIn's Learning Platform with MongoDBBuilding LinkedIn's Learning Platform with MongoDB
Building LinkedIn's Learning Platform with MongoDB
 
Semi Formal Model for Document Oriented Databases
Semi Formal Model for Document Oriented DatabasesSemi Formal Model for Document Oriented Databases
Semi Formal Model for Document Oriented Databases
 
Mongo db presentation
Mongo db presentationMongo db presentation
Mongo db presentation
 
Crafting Evolvable Api Responses
Crafting Evolvable Api ResponsesCrafting Evolvable Api Responses
Crafting Evolvable Api Responses
 
Eagle6 mongo dc revised
Eagle6 mongo dc revisedEagle6 mongo dc revised
Eagle6 mongo dc revised
 
Eagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational AwarenessEagle6 Enterprise Situational Awareness
Eagle6 Enterprise Situational Awareness
 
Keynote - Speaker: Grigori Melnik
Keynote - Speaker: Grigori Melnik Keynote - Speaker: Grigori Melnik
Keynote - Speaker: Grigori Melnik
 
Windows8 lightningtalk
Windows8 lightningtalkWindows8 lightningtalk
Windows8 lightningtalk
 

Kürzlich hochgeladen

Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 

Kürzlich hochgeladen (20)

Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 

The Rise of NoSQL

  • 2. 2
  • 6. Order: 4711 Customer: Max Payment: Credit Card Line items: 405 235 001 540 987 326 6
  • 7. 7
  • 14. Not only size matters... DataVolumes grow exponentially Data gets more connected Semi-Structured/ Unstructured Data 14
  • 16. 16
  • 17. 17
  • 26. 26
  • 31. KeyValue Store Characteristics Most simple data model DB does not care about data types Similar to persistent hash map Fast lookups Easy to distribute Inspired by Amazon Dynamo paper Restricted possibilities of querying 31
  • 32. Open Source Advanced KeyValue Store In-Memory Store with optional durability Knows types like strings, hashes, lists, sets BSD License Implemented in C Very small footprint (20k LOC for rel. 2.2) APIs for C/C++, C#, Closure, Lisp, Erlang, Go, Haskell, Java, JavaScript, Objective-C, Perl, PHP, Python, Ruby, ... Used at Twitter, Instagram, flickr, stackoverflow, ... 32
  • 33. Open Source KeyValue Store Highly available and fault-tolerant Basho Technologies Apache License Implemented in Erlang APIs for Java, Erlang, Ruby, Php, Python, Closure, C#, C/C++, HTTP, Node.js, Perl, Scala, Smalltalk, ... Used at Mozilla, Comcast,AOL 33
  • 34. Open Source KeyValue Store Big, distributed, persistent, fault-tolerant hash table Developed by LinkedIn Implemented in Java Apache 2.0 License Dynamo Scale Out Used at LinkedIn 34
  • 36. {            "id":  "993174208"            "tex":  "texture  wood  pile"            "in_reply_to_screen_name":  "akleinbe",              "in_reply_to_status_id_str":  null,              "id_str":  "54691802283900928",              "entities":  {                        "user_mentions":  [                                    {                                                "indices":  [                                                            3,                                                              19                                                ],                                                  "screen_name":  "PostGradProblem",                                                  "id_str":  "271572434",                                                  "name":  "PostGradProblems",                                                  "id":  271572434                                    }                        ],                          "urls":  [  ],                          "hashtags":  [  ]            } }   {            "id":  "596229751"            "customer_id":  "RT  @PostGradProblem:  In  preparation  for  the  NFL   lockout,  I  will  be  spending  twice  as  much  time  analyzing  my  fantasy   baseball  team  during  ...",              "truncated":  true,              "in_reply_to_user_id":  null,              "in_reply_to_status_id":  null,              "favorited":  false,              "source":  "<a  href="http://twitter.com/"  rel="nofollow">Twitter   for  iPhone</a>",              "in_reply_to_screen_name":  null,              "in_reply_to_status_id_str":  null,              "id_str":  "54691802283900928",              "entities":  {                        "user_mentions":  [                                    {                                                "indices":  [                                                            3,                                                              19                                                ],                                                  "screen_name":  "PostGradProblem",                                                  "id_str":  "271572434",                                                  "name":  "PostGradProblems",                                                  "id":  271572434                                    }                        ],                          "urls":  [  ],                          "hashtags":  [  ]            } }   {    "id":  "3452094105"    "user":  {          "notifications":  null,            "profile_use_background_image":  true,            "statuses_count":  31,            "profile_background_color":  "C0DEED",            "followers_count":  3066,            "profile_image_url":  "http://a2.twimg.com/profile_images/1285770264/ PGP_normal.jpg",            "listed_count":  6,            "profile_background_image_url":  "http://a3.twimg.com/a/1301071706/ images/themes/theme1/bg.png",            "description":  "",            "screen_name":  "PostGradProblem",            "default_profile":  true,            "verified":  false,            "time_zone":  null,            "profile_text_color":  "333333",            "is_translator":  false,            "profile_sidebar_fill_color":  "DDEEF6",            "location":  ""  } } Document 36
  • 37. Document Store Characteristics You can query into document structure You can use natural aggregates as documents You can retrieve portions of a document You can update portions of a document You can have links between documents Compared to key value data model the document is more transparent No schema / implicit schema Some queries are a pain in the neck! 37
  • 38. Open Source Document Store „Most popular NoSQL database“ Stores JSON like documents Implemented in C++ GNU AGPL License APIs for C/C++, C#, Go, Erlang, Java, JavaScript, Node.js, Perl, PHP, Python, Ruby, Scala, HTTP/REST Used at Craigslist, eBay, Foursquare, SourceForge, NYT, ... 38
  • 39. Open Source Document Store Ease of Use No update locks Stores JSON like documents Implemented in Erlang Apache License APIs for JavaScript, MapReduce, HTTP/REST Used at BBC, Credit Suisse, Meebo, ... 39
  • 40. Open Source Distributed Document Store Optimized for interactive applications Merged from Membase and CouchDB Implemented in C++, Erlang, C Apache License / Proprietary APIs for Java, .NET, PHP, Ruby, Python, C Used at AOL, Cisco, LinkedIn, Salesforce.com, Zynga, ... 40
  • 42. Schemaless Schemaless is one of the main reasons of interest in NoSQL databases Schemaless reduces ceremony Schemaless increases flexibility BUT... 42
  • 43. Schemaless means implicit schema To query specific attributes you have to know their names Schema Managment is shifted from db to code http://martinfowler.com/articles/schemaless/ 43
  • 46. more complicated data model rich structure single key (row key) easy/ fast access to columns/column families in a row rows can contain 100s or 1000s of columns aggregate oriented Column Family Characteristics 46
  • 47. Open Source Wide Column Store Supports multi data center replication Good for distributed DBs with massive write loads Implemented in Java Apache License 2.0 APIs for C#, C++, Clojure, Erlang, Go, Haskell, Java, JavaScript, Perl, PHP, Python, Ruby, Scala Used at CERN, Facebook, Netflix, Rackspace, SoundCloud,Twitter ... 47
  • 48. Open Source Column Oriented Database Part of Hadoop, Inspired by Googles BigTable Implemented in Java Apache License 2.0 APIs for Restful HTTP,Thrift, C/C++, C#, Groovy, Java, PHP, Python, Scala Used at Amazon,Adobe,AOL, Cloudspace, eBay, Facebook, IBM, Last.fm, LinkedIn, Spotify,Yahoo!, ... 48
  • 51. 51
  • 52. Graph DBs disassemble things in fragments and relations You can do very interesting queries on graph structures - things you can not event think of in SQL Good for complex graph structured data Fast lookups, fast traversing Whiteboard Friendly Graph DB Characteristics 52
  • 53. Open Source Graph Database Embedded, disk-based, fully transactional Implemented in Java GPLv3 and AGPLv3 / commercial APIs for .NET, Clojure, Go, Groovy, Java, JavaScript, Perl, PHP, Pyhton, Ruby, Scala Used at Adobe, Cisco,Telekom... 53
  • 54. Open Source Document Database with Graph oriented extensions Supports SQL (without join) as query language Supports ACID transactions Implemented in Java Apache License 2.0 Commercial support available APIs for HTTP/REST, Java, JavaScript, Scala, PHP, Ruby, .NET, Clojure, Node.js, Python, ... Used at SKY, Spielo, UltraDNS... 54
  • 56. Replication Master Slave 1 Slave 2 Slave 3 write read 56
  • 57. Sharding Shard 1 Shard 2 Shard 3 Router writeread 57
  • 58. Hashing Problems common way of choosing a server: server = hash(key) mod n Every object gets hashed to a new location! What happens, if a server goes down? 58
  • 59. Consistent Hashing Use same hash function for both objects and servers shards:A, B, C objects: 1, 2, 3, 4 http://www.tom-e-white.com/2007/11/consistent-hashing.html 59
  • 61. BASE (vs.ACID) Basical Availability Soft State Eventual Consistency http://www.allthingsdistributed.com/2008/12/eventually_consistent.html http://www.infoq.com/articles/pritchett-latency 61
  • 63. RDBMS will not die Use a relational database unless you have good reason not to 63
  • 64. RDBMS have their limits Vertical scaling is expensive and has hard limits Horizontal scaling is not possible/ limited Joins on big and distributed tables too expenisve/ too slow Rigid Schema inappropriate for semi structured/dynamic data (sparse tables) Consistency is higher rated than availability 64
  • 65. NoSQL come to the rescue Distribution and scalability are fundamental design goals of NoSQL DBs Tradeoff between Consistency,Availability and horizontal scalability (CAP Theorem, BASE) Small footprint in favor of ease of use Outstandingly proven in practice (Google, Amazon, Facebook, LinkedIn,Twitter, ...) 65
  • 66. There are cons too Broad spectrum of products is difficult to understand You have to get used to designing models for Key/Value or Column Family stores Mostly no ad hoc queries No standards - no portability Sometimes poor documentation Few commercial support offers 66
  • 67. RDBMS vs. NoSQL think about data think about queries redundancy is bad redundancy is ok indexes managed by DB manage own indexes query over relations no joins always exact results results may be out of date SQL proprietary APIs 67
  • 70. Polyglot Persistence NoSQL will break the relational dominance unlike the OODBMSs in the 80ies RDBMS is not the one and only option any more Select the storage technology that best fits your current situation Enterprises will use different storage technologies for different kinds of data DB is no integration point any more Apps talk via WebServices and encapsulate their individual data storage technologies 70
  • 71. NewSQL The answer of traditional RDBMS vendors to the great success of NoSQL Improved RDBMS offer more features and better scalability Oracle launches Oracle NoSQL, their own NoSQL DB based upon a revised Berkley DB Oracle, Microsoft, Sybase, IBM, Greenplum, Pervuasive already have a tight Hadoop Integration „Can‘t fight it? Embrace it!“ 71
  • 73. Amazon Dynamo Paper http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/ decandia07dynamo.pdf Google Big Table Paper http://static.googleusercontent.com/external_content/ untrusted_dlcp/research.google.com/de//archive/bigtable- osdi06.pdf NoSQL Archive http://nosql-database.com DB Engines Ranking http://db-engines.com/en/ranking Recommended Reads 73
  • 74. Thx! Arnd Kleinbeck Senior Software Architect Business Division Applications @akleinbe 74