SwiftAnalytics: optimizing object stores for big data analytics
File(s)07923808.pdf (236.54 KB)
Published version
Author(s)
Rupprecht, L
Zhang, R
Owen, W
Pietzuch, PR
Hildebrand, D
Type
Conference Paper
Abstract
Due to their scalability and low cost, object-based
storage systems are an attractive storage solution and widely
deployed. To gain valuable insight from the data residing in
object storage but avoid expensive copying to a distributed
filesystem (e.g. HDFS), it would be natural to directly use them
as a storage backend for data-parallel analytics frameworks such
as Spark or MapReduce. Unfortunately, executing data-parallel
frameworks on object storage exhibits severe performance prob-
lems, reducing average job completion times by up to 6.5
×
.
We identify the two most severe performance problems when
running data-parallel frameworks on the OpenStack Swift object
storage system in comparison to the HDFS distributed filesystem:
(i) the fixed mapping of object names to storage nodes prevents
local writes and adds delay when objects are renamed; (ii) the
coarser granularity of objects compared to blocks reduces data
locality during reads. We propose the SwiftAnalytics object
storage system to address them: (i) it uses
locality-aware
writes to
control an object’s location and eliminate unnecessary I/O related
to renames during job completion, speeding up analytics jobs by
up to 5.1
×
; (ii) it transparently chunks objects into smaller sized
parts to improve data-locality, leading to up to 3.4
×
faster reads.
storage systems are an attractive storage solution and widely
deployed. To gain valuable insight from the data residing in
object storage but avoid expensive copying to a distributed
filesystem (e.g. HDFS), it would be natural to directly use them
as a storage backend for data-parallel analytics frameworks such
as Spark or MapReduce. Unfortunately, executing data-parallel
frameworks on object storage exhibits severe performance prob-
lems, reducing average job completion times by up to 6.5
×
.
We identify the two most severe performance problems when
running data-parallel frameworks on the OpenStack Swift object
storage system in comparison to the HDFS distributed filesystem:
(i) the fixed mapping of object names to storage nodes prevents
local writes and adds delay when objects are renamed; (ii) the
coarser granularity of objects compared to blocks reduces data
locality during reads. We propose the SwiftAnalytics object
storage system to address them: (i) it uses
locality-aware
writes to
control an object’s location and eliminate unnecessary I/O related
to renames during job completion, speeding up analytics jobs by
up to 5.1
×
; (ii) it transparently chunks objects into smaller sized
parts to improve data-locality, leading to up to 3.4
×
faster reads.
Date Issued
2017-04-04
Date Acceptance
2017-01-15
Publisher
IEEE
Copyright Statement
This paper is embargoed until publication.
Source
IEEE International Conference on Cloud Engineering (IC2E), 2017
Publication Status
Accepted
Start Date
2017-04-04
Finish Date
2017-04-07
Coverage Spatial
Vancouver, Canada