Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
VoloDB: High Performance and ACID Compliant Distributed Key Value Store with Scalable Prune Index Scans
KTH, School of Information and Communication Technology (ICT).
2015 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE creditsStudent thesis
Abstract [en]

Relational database provide an efficient mechanism to store and retrieve structured data with ACID properties but it is not ideal for every scenario. Their scalability is limited because of huge data processing requirement of modern day systems. As an alternative NoSQL is different way of looking at a database, they generally have unstructured data and relax some of the ACID properties in order to achieve massive scalability. There are many flavors of NoSQL system, one of them is a key value store. Most of the key value stores currently available in the market offers reasonable performance but compromise on many important features such as lack of transactions, strong consistency and range queries. The stores that do offer these features lack good performance.

The aim of this thesis is to design and implement VoloDB, a key value store that provides high throughput in terms of both reads and writes but without compromising on ACID properties. VoloDB is built over MySQL Cluster and instead of using high-level abstractions, it communicates with the cluster using the highly efficient native low level C++ asynchronous NDB API. VoloDB talks directly to the data nodes without the need to go through MySQL Server that further enhances the performance. It exploits many of MySQL Cluster’s features such as primary and partition key lookups and prune index scans to hit only one of the data nodes to achieve maximum performance. VoloDB offers a high level abstraction that hides the complexity of the underlying system without requiring the user to think about internal details. Our key value store also offers various additional features such as multi-query transactions and bulk operation support. C++ client libraries are also provided to allow developers to interface easily with our server. Extensive evaluation is performed which benchmarks various scenarios and also compares them with another high performance open source key value store. 

Place, publisher, year, edition, pages
2015. , 82 p.
Series
TRITA-ICT-EX, 2015:96
Keyword [en]
volodb, high performance, high throughput, ACID, scalable, distributed, key value store, prune index scan
National Category
Engineering and Technology
Identifiers
URN: urn:nbn:se:kth:diva-172820OAI: oai:DiVA.org:kth-172820DiVA: diva2:849736
Educational program
Master of Science - Software Engineering of Distributed Systems
Presentation
2015-06-11, Von Neumann, SICS Swedish ICT, floor 6, Electrum Building, Kista, 14:00 (English)
Supervisors
Examiners
Available from: 2015-10-07 Created: 2015-08-31 Last updated: 2016-05-11Bibliographically approved

Open Access in DiVA

VoloDB_Ali_Dar(842 kB)196 downloads
File information
File name FULLTEXT01.pdfFile size 842 kBChecksum SHA-512
cbd9ba72f40ef10ca2b4d2e24f0d461a4c5ccc17f0fb1c41e51519b1f9ce64241f867ceca635a28d26dc638115c81bc534a13b8e7547b49844e8e27100b73208
Type fulltextMimetype application/pdf

By organisation
School of Information and Communication Technology (ICT)
Engineering and Technology

Search outside of DiVA

GoogleGoogle Scholar
Total: 196 downloads
The number of downloads is the sum of all downloads of full texts. It may include eg previous versions that are now no longer available

urn-nbn

Altmetric score

urn-nbn
Total: 405 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf