MongoDB and Apache HBase: Benchmarking

Post on 07-Dec-2014

10314 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

Transcript

Products comparison

AND

Technical overview

Programming language C++ Java

Language Bindings & Clients C, C++, Erlang, Haskell, Java, JavaScript, .NET (C# F#, PowerShell, etc), Perl, PHP, Python, Ruby, Scala.

Java, Jython ,Groovy DSL , Scala, REST

Protocols Mongo Wire Protocol Apache Avro, Thrift, REST

First public release and current state Feb 2009 Last release 2.0.2 14th December 2011

Jul 2010 Last release 0.92.0 23th January 2012

Technical overview

Querying Mongo Query Language Filter LanguageAtomicity Conditional +Consistency + +Isolation - +Durability + -

Secondary Indexes Indexing of embedded element, compound key

Periodic-Update Secondary Index Filter Query Dual-Write Secondary Index Summary Tables

Map/Reduce Supports Sharding + +Replication + +Revision control - +

MongoDB features

Document-orientedCapped CollectionsGreed FS IndexingMap ReduceQuery languageJSON/BSONEventually-consistence

HBase features

• Column oriented(after Google big table)• Bloom filters on per column basis• MapReduce• Secondary Indexes• HDFS based• Revision controll

MongoDB configuration example

HBase configuration

MongoDB use casesGit Hub : the social coding site, is using MongoDB for an internal reporting application.РосГос затраты: RosSpending is the first Russian public spending monitoring project..Disney: common set of tools and APIs for all games within the Interactive Media Group, using MongoDB as a common object repository to persist state information.Over 300 of companies have prodact deployments of mongoDB

HBase use casesFacebook : Real-Time messaging Over 152 billions messages monthlyAdobe: 30 nodes social services ,data and processing for internal use.Explorys: over a billion anonymized clinical recordsMozilla Socorro : Crash reporting systemPowered by about 40 companies

Benchmarking

• Enveroment: Amazon Elastic compute cloud.• Testing tool – Yahoo Cloud Service

benchmark(YCSB)

MongoDB Benchmarking.12hours of loading.95.000.000 records for 2 shards167.600.000 for 4 shards

0 2400 4800 7200 9600 12000 14400 16800 19200 21600 24000 26400 28800 31200 33600 36000 38400 40800 432000.00

2000.00

4000.00

6000.00

8000.00

10000.00

12000.00

4 shards loading

2 shards loading

50% reads 50% updates

500 1000 2000 3000 3300 50000

2000

4000

6000

8000

10000

12000

2 shards update2 shards read4 shards update4 shards read

95% reads 5% updates

500 1000 2000 3000 4000 50000

2000

4000

6000

8000

10000

12000

14000

16000

2 shards update2 shards read4 shards update4 shards read

Read only performance

500 1000 2000 3000 4000 50000

1000

2000

3000

4000

5000

6000

7000

8000

9000

10000

2 shards4 shards

Read Insert performance

200 300 4000

50000

100000

150000

200000

250000

2 shards insert2 shards read4 shards insert4 shards read

Questions

skype: google_micmailto: mikhail.hul@gmail.commailto: mikhail.hul@altoros.com

top related