MyCassandra: a cloud storage supporting both read heavy and write heavy workloads

  • Authors:
  • Shunsuke Nakamura;Kazuyuki Shudo

  • Affiliations:
  • Tokyo Institute of Technology, Tokyo, Japan;Tokyo Institute of Technology, Tokyo, Japan

  • Venue:
  • Proceedings of the 5th Annual International Systems and Storage Conference
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

A cloud storage with persistence shows solid performance only with a read heavy or write heavy workload. There is a trade-off between the read-optimized and write-optimized design of a cloud storage. This is dominated by its storage engine, which is a software component for managing data stored on memory and disk. A storage engine can be pluggable with an adequate software design though today's cloud storages are not always modular. We developed a modular cloud storage called MyCassandra to demonstrate that such a cloud storage can be read-optimized and write-optimized with a modular design. Various storage engines can be introduced into MyCassandra and they determine with what workload the cloud storage can perform well. With MyCassandra we proved that such a modular design enables a cloud storage to adapt to workloads. We propose a method to build a cloud storage that performs well with both read heavy and write heavy workloads. A heterogeneous cluster is built from MyCassandra nodes with different storage engines, read-optimized, write-optimized, and on-memory (read-and-write-optimized). A query is routed to nodes that efficiently process it while the cluster maintains consistency between data replicas with a quorum protocol. The cluster showed comparable performance with the original Cassandra for write heavy workloads, and it showed considerably better performance for read heavy workloads. With read-only workload, read latency was 90.4% lower than and throughput was 11.00 times as high as Cassandra.