Crystal: Software-Defined Storage for Multi-Tenant Object Stores


Raúl Gracia-Tinedo, Josep Sampé, Edgar Zamora, Marc Sánchez-Artigas, and Pedro García-López, Universitat Rovira i Virgili; Yosef Moatti and Eran Rom, IBM Research—Haifa


Object stores are becoming pervasive due to their scalability and simplicity. Their broad adoption, however, contrasts with their rigidity for handling heterogeneous workloads and applications with evolving requirements, which prevents the adaptation of the system to such varied needs. In this work, we present Crystal, the first Software-Defined Storage (SDS) architecture whose core objective is to efficiently support multi-tenancy in object stores. Crystal adds a filtering abstraction at the data plane and exposes it to the control plane to enable high-level policies at the tenant, container and object granularities. Crystal translates these policies into a set of distributed controllers that can orchestrate filters at the data plane based on real-time workload information. We demonstrate Crystal through two use cases on top of OpenStack Swift: One that proves its storage automation capabilities, and another that differentiates IO bandwidth in a multi-tenant scenario. We show that Crystal is an extensible platform to deploy new SDS services for object stores with small overhead.

Open Access Media

USENIX is committed to Open Access to the research presented at our events. Papers and proceedings are freely available to everyone once the event begins. Any video, audio, and/or slides that are posted after the event are also free and open to everyone. Support USENIX and our commitment to Open Access.

@inproceedings {202265,
author = {Ra{\'u}l Gracia-Tinedo and Josep Samp{\'e} and Edgar Zamora and Marc S{\'a}nchez-Artigas and Pedro Garc{\'\i}a-L{\'o}pez and Yosef Moatti and Eran Rom},
title = {Crystal: {Software-Defined} Storage for {Multi-Tenant} Object Stores},
booktitle = {15th USENIX Conference on File and Storage Technologies (FAST 17)},
year = {2017},
isbn = {978-1-931971-36-2},
address = {Santa Clara, CA},
pages = {243--256},
url = {},
publisher = {USENIX Association},
month = feb

Presentation Audio