2 research outputs found

    VI-Attached Database Storage ∗

    No full text
    This article presents a VI–attached database storage architecture to improve database transaction rates. More specifically, we examine how VI–based interconnects can be used to improve I/O path performance between a database server and a storage subsystem. To facilitate the interaction between client applications and a VI-aware storage system, we design and implement a software layer called DSA, that is layered between applications and VI. DSA takes advantage of specific VI features and deals with many of its shortcomings. We provide and evaluate one kernel–level and two user–level implementations of DSA. These implementations trade transparency and generality for performance at different degrees, and unlike research prototypes are designed to be suitable for real–world deployment. We have also investigated many design tradeoffs in the storage cluster. We present detailed measurements using a commercial database management system with both micro-benchmarks and industrial database workloads on a mid–size, 4 CPU, and a large, 32 CPU, database server. We also compare the effectiveness of VI-attached storage with an iSCSI configura-tion, and conclude that storage protocols implemented using DSA over VI have significant performance advantages. More generally, our results show that VI–based interconnects and user–level communica-tion can improve all aspects of the I/O path between the database system and the storage back-end. We also find that to make effective use of VI in I/O intensive environments we need to provide sub-stantial additional functionality than what is currently provided by VI. Finally, new storage APIs that help minimize kernel involvement in the I/O path are needed to fully exploit the benefits of VI–based communication
    corecore