5,629 research outputs found
Elevating commodity storage with the SALSA host translation layer
To satisfy increasing storage demands in both capacity and performance,
industry has turned to multiple storage technologies, including Flash SSDs and
SMR disks. These devices employ a translation layer that conceals the
idiosyncrasies of their mediums and enables random access. Device translation
layers are, however, inherently constrained: resources on the drive are scarce,
they cannot be adapted to application requirements, and lack visibility across
multiple devices. As a result, performance and durability of many storage
devices is severely degraded.
In this paper, we present SALSA: a translation layer that executes on the
host and allows unmodified applications to better utilize commodity storage.
SALSA supports a wide range of single- and multi-device optimizations and,
because is implemented in software, can adapt to specific workloads. We
describe SALSA's design, and demonstrate its significant benefits using
microbenchmarks and case studies based on three applications: MySQL, the Swift
object store, and a video server.Comment: Presented at 2018 IEEE 26th International Symposium on Modeling,
Analysis, and Simulation of Computer and Telecommunication Systems (MASCOTS
HVSTO: Efficient Privacy Preserving Hybrid Storage in Cloud Data Center
In cloud data center, shared storage with good management is a main structure
used for the storage of virtual machines (VM). In this paper, we proposed
Hybrid VM storage (HVSTO), a privacy preserving shared storage system designed
for the virtual machine storage in large-scale cloud data center. Unlike
traditional shared storage, HVSTO adopts a distributed structure to preserve
privacy of virtual machines, which are a threat in traditional centralized
structure. To improve the performance of I/O latency in this distributed
structure, we use a hybrid system to combine solid state disk and distributed
storage. From the evaluation of our demonstration system, HVSTO provides a
scalable and sufficient throughput for the platform as a service
infrastructure.Comment: 7 pages, 8 figures, in proceeding of The Second International
Workshop on Security and Privacy in Big Data (BigSecurity 2014
Optimizing Hierarchical Storage Management For Database System
Caching is a classical but effective way to improve system performance.
To improve system performance, servers, such as database servers and storage servers, contain
significant amounts of memory that act as a fast cache.
Meanwhile, as new storage devices such as flash-based solid state drives (SSDs)
are added to storage systems over time, using the
memory cache is not the only way to improve system performance.
In this thesis, we address the problems of how to manage the cache of a storage server and
how to utilize the SSD in a hybrid storage system.
Traditional caching policies are known to perform poorly for storage
server caches. One promising approach to solving this problem is to use hints
from the storage clients to manage the storage server cache. Previous
hinting approaches are ad hoc, in that a predefined reaction to
specific types of hints is hard-coded into the caching policy. With
ad hoc approaches, it is difficult to ensure that the best hints are
being used, and it is difficult to accommodate multiple types of hints
and multiple client applications. In this thesis, we propose
CLient-Informed Caching (CLIC), a generic hint-based technique for
managing storage server caches. CLIC automatically interprets hints
generated by storage clients and translates them into a server caching
policy. It does this without explicit knowledge of the
application-specific hint semantics. We demonstrate using trace-based
simulation of database workloads that CLIC outperforms hint-oblivious
and state-of-the-art hint-aware caching policies.
We also demonstrate that the space required to track and interpret
hints is small.
SSDs are becoming a part of the storage system.
Adding SSD to a storage system not only raises the question of how to manage the SSD,
but also raises the question of whether current buffer pool algorithms will still work effectively.
We are interested in the use of hybrid storage systems, consisting of SSDs and hard disk drives (HDD),
for database management.
We present cost-aware replacement algorithms for both the DBMS buffer pool and the SSD.
These algorithms are aware of the different I/O performance
of HDD and SSD.
In such a hybrid storage system, the physical access pattern to the SSD depends on the management of the DBMS buffer pool.
We studied the impact of the buffer pool caching policies on the access patterns of the SSD.
Based on these studies, we designed a caching policy to effectively manage the SSD.
We implemented these algorithms in MySQL's InnoDB storage engine
and used the TPC-C workload to demonstrate that these cost-aware algorithms
outperform previous algorithms
Improving the Performance and Endurance of Persistent Memory with Loose-Ordering Consistency
Persistent memory provides high-performance data persistence at main memory.
Memory writes need to be performed in strict order to satisfy storage
consistency requirements and enable correct recovery from system crashes.
Unfortunately, adhering to such a strict order significantly degrades system
performance and persistent memory endurance. This paper introduces a new
mechanism, Loose-Ordering Consistency (LOC), that satisfies the ordering
requirements at significantly lower performance and endurance loss. LOC
consists of two key techniques. First, Eager Commit eliminates the need to
perform a persistent commit record write within a transaction. We do so by
ensuring that we can determine the status of all committed transactions during
recovery by storing necessary metadata information statically with blocks of
data written to memory. Second, Speculative Persistence relaxes the write
ordering between transactions by allowing writes to be speculatively written to
persistent memory. A speculative write is made visible to software only after
its associated transaction commits. To enable this, our mechanism supports the
tracking of committed transaction ID and multi-versioning in the CPU cache. Our
evaluations show that LOC reduces the average performance overhead of memory
persistence from 66.9% to 34.9% and the memory write traffic overhead from
17.1% to 3.4% on a variety of workloads.Comment: This paper has been accepted by IEEE Transactions on Parallel and
Distributed System
- …