Block-level Storage is widely used to support heavy work-
loads. It can be directly accessed by the operating system, but it faces some durability issues, hardware limitations and performance degradation in geographically distributed systems. Object-based Storage Device (OSD) is a data storage concept widely used to support write-once-read-many (WORM) systems. Because OSD contains data, metadata and an unique identifier, it becomes very powerful and customizable. OSDs are ideal for solving the increasing problems of data growth and resilience requirements while mitigating costs. This paper describes a scalable storage architecture that uses OSD from a distributed P2P Cloud Storage system and delivers a Block-level Storage layer to the user. This architecture combines the advantages of the replication, reliability, and scalability of a OSD on commodity hardware with the simplicity of raw block for data-intensive workload. We retrieve data from the OSD in a set of blocks called buckets, allowing read-ahead operations to improve the performance of the raw block layer. Through this architecture we show the possibility of using OSD on the back end and deliver a storage layer based on raw blocks with better performance to the end user. We evaluated the proposed architecture based on the cache behavior to understand non-functional properties. Experiments were performed with different cache sizes. High throughput performance was measured for heavy workloads at the two storage layers.
Diamond Application Development Crafting Solutions with Precision
uStorage - A storage architecture to provide Block-level Storage through Object-based Storage
1. uStorage - A storage architecture to provide
Block-level Storage through Object-based Storage
Felipe Oliveira Gutierrez
felipe.o.gutierrez@gmail.com
UFPE - Federal University of Pernambuco - Brazil
Ustore Cloud Services
September 28, 2017
Vinicius C. Garcia, José Fernando Cardoso, Thiago Jamir, Josino Rodrigues Neto, Rodrigo Assad, and Marcos Barreto
2. Agenda
● Motivation
● Problem
● State of the art
● Architecture
○ proposal
○ implementation
○ evaluation
● Conclusion and future work
2
ESOCC 2017Sep 28th, 2017
4. Block Storage
● raw block
● same size
● no metadata
● scalability limited
● ID to local system
● good performance OS
mount point
4
Object Storage
● buckets
● different size
● expandable metadata
● very scalable
● global unique ID on
distributed systems
● bad performance OS
mount point
ESOCC 2017Sep 28th, 2017
5. Block Storage
● needs HA for prepare to
fail
● high performance
hardware
● reduced availability
● random RW loads
● structured data sets
5
Object Storage
● already prepared to fail
● hardware flexibility
● high availability
● generally read
● unstructured data sets
ESOCC 2017Sep 28th, 2017
6. Other architectures that rely on Block Storage model
6
NexentaStor Ceph Panasas
File-based Storage,
Block-level Storage
File-based Storage,
Block-level Storage,
Object-based Storage
Extended Object File
System (exofs)
Serviço de Cloud Storage POSIX filesystem RAID on the cluster
Filesystem replication on
different domains
Fault tolerance through data
replication
Panasas Active Scale
Storage Cluster
ESOCC 2017Sep 28th, 2017
14. uStorage architecture requirements
● Which clean policy must be used on the iSCSI Target cache?
● When the clean policy must be executed?
● How many buckets must be removed on the policy execution?
● Which buckets must be removed from the iSCSI Target cache?
14
ESOCC 2017Sep 28th, 2017
28. Multiple LUNs on the same iSCSI Target
28
ESOCC 2017Sep 28th, 2017
29. Conclusion and future work
● The main configuration that improves the performance is the bucket size.
○ Better evaluation of the bucket size.
● Optimize the restore operations if we want more IOPs on the cache.
● Switch the relational database on the Metadata Storage for a faster database.
● Improve cache readahead through bucket prefetching.
○ The system init sequence doesn’t change.
○ Watch file read patterns.
○ Improve disk throughput.
29
ESOCC 2017Sep 28th, 2017
30. uStorage - A storage architecture to provide
Block-level Storage through Object-based Storage
Felipe Oliveira Gutierrez
felipe.o.gutierrez@gmail.com
UFPE - Federal University of Pernambuco - Brazil
Ustore Cloud Services
September 28, 2017
Vinicius C. Garcia, José Fernando Cardoso, Thiago Jamir, Josino Rodrigues Neto, Rodrigo Assad, and Marcos Barreto