Introduction into caches, NoSQL and In-Memory Data Grid systems presented at Lifestreet Media Meetup in Moscow, 11 Jul 2012.
Classification attempt is mate according to their type, theoretical origin and CAP compliance.
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Distributed Caches and Storages - presentation
1. DISTRIBUTED CACHES & STORAGES
INTRODUCTION & CLASSIFICATION
Max Alexejev
11/07/2012
Moscow Big Systems/Big Data
2. About me
• 10 years experience in Java development
• Recently – In-Memory Data Grids consultant on
various projects in Silicon Valley, USA
• Now – Tech Lead at one of invested startups in
Moscow
• Specialized in distributed systems design, Java
performance and GC tuning, caching and data grids
Friend of LifeStreet Media
3. Lots of products in the wild
Memcached Cassandra
GemStone
Hazelcast
GemFire
Riak Redis HBase
Oracle
Coherence
Infinispan
Voldemort Tokyo
Kabinet CouchDB
MongoDB
EhCache
Neo4j …
5. By Type
Legacy and
RDBMS Key Value NoSQL IMDG GIS
Exotics
No, not this time Memcached, Explanation Computational-
Generic
EhCache follows… or Data-
Coherence,
GemFire,
GridGain …
7. Origins: The famous PDFs
Amazon Dynamo Paper
• allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf
Google BigTable Paper
• research.google.com/archive/bigtable-osdi06.pdf
Zookeeper distributed protocol
• research.yahoo.com/files/ladis08.pdf (Zab protocol)
8. CAP properties breakdown
CP-class: CA-class:
All BigTable-based Consistency RDBMS,
(BigTable, IMDG
HyperTable, Hbase,
LevelDB)
MongoDB, Redis,
MemcacheDb Partition
Availability
Tolerance
AP-class:
All Dynamo-based (DynamoDB, Cassandra,
Voldemort, Riak), CouchDB, SimpleDB, Tokyo
Kabinet, Odnoklassniki’s distr. cache
9. Let’s use it right now for our
brand-new startup!!!
ACID guarantees & Transactions?
Data distribution & replication?
Durability support?
Ad-hoc queries?
Operations-friendly?
Active community?
Additional risk management involved.
This template can be used as a starter file for presenting training materials in a group setting.SectionsSections can help to organize your slides or facilitate collaboration between multiple authors. On the Home tab under Slides, click Section, and then click Add Section.NotesUse the Notes pane for delivery notes or to provide additional details for the audience. You can see these notes in Presenter View during your presentation. Keep in mind the font size (important for accessibility, visibility, videotaping, and online production)Coordinated colors Pay particular attention to the graphs, charts, and text boxes.Consider that attendees will print in black and white or grayscale. Run a test print to make sure your colors work when printed in pure black and white and grayscale.Graphics, tables, and graphsKeep it simple: If possible, use consistent, non-distracting styles and colors.Label all graphs and tables.
Give a brief overview of the presentation. Describe the major focus of the presentation and why it is important.Introduce each of the major topics.To provide a road map for the audience, you can repeat this Overview slide throughout the presentation, highlighting the particular topic you will discuss next.