ACM Transactions on Database Systems (TODS)
Efficient locking for concurrent operations on B-trees
ACM Transactions on Database Systems (TODS)
Scaling and Charact rizing Database Workloads: Bridging the Gap between Research and Practice
Proceedings of the 36th annual IEEE/ACM International Symposium on Microarchitecture
Design of flash-based DBMS: an in-page logging approach
Proceedings of the 2007 ACM SIGMOD international conference on Management of data
An efficient B-tree layer implementation for flash-memory storage systems
ACM Transactions on Embedded Computing Systems (TECS)
Design tradeoffs for SSD performance
ATC'08 USENIX 2008 Annual Technical Conference on Annual Technical Conference
The Five-Minute Rule 20 Years Later: and How Flash Memory Changes the Rules
Queue - Enterprise Flash Storage
Proceedings of the eleventh international joint conference on Measurement and modeling of computer systems
Advances in flash memory SSD technology for enterprise database applications
Proceedings of the 2009 ACM SIGMOD International Conference on Management of data
Dynamic in-page logging for flash-aware B-tree index
Proceedings of the 18th ACM conference on Information and knowledge management
Proceedings of the 2010 ACM SIGMOD International Conference on Management of data
Exploiting Internal Parallelism of Flash-based SSDs
IEEE Computer Architecture Letters
Tree indexing on solid state drives
Proceedings of the VLDB Endowment
Proceedings of the international conference on Supercomputing
HPCA '11 Proceedings of the 2011 IEEE 17th International Symposium on High Performance Computer Architecture
A practical concurrent index for solid-state drives
Proceedings of the 21st ACM international conference on Information and knowledge management
The impact of solid state drive on search engine cache management
Proceedings of the 36th international ACM SIGIR conference on Research and development in information retrieval
Extending SSD lifetime in database applications with page overwrites
Proceedings of the 6th International Systems and Storage Conference
Scan and join optimization by exploiting internal parallelism of flash-based solid state drives
WAIM'13 Proceedings of the 14th international conference on Web-Age Information Management
Hi-index | 0.02 |
Previous research addressed the potential problems of the hard-disk oriented design of DBMSs of flashSSDs. In this paper, we focus on exploiting potential benefits of flashSSDs. First, we examine the internal parallelism issues of flashSSDs by conducting benchmarks to various flashSSDs. Then, we suggest algorithm-design principles in order to best benefit from the internal parallelism. We present a new I/O request concept, called psync I/O that can exploit the internal parallelism of flashSSDs in a single process. Based on these ideas, we introduce B+-tree optimization methods in order to utilize internal parallelism. By integrating the results of these methods, we present a B+-tree variant, PIO B-tree. We confirmed that each optimization method substantially enhances the index performance. Consequently, PIO B-tree enhanced B+-tree's insert performance by a factor of up to 16.3, while improving point-search performance by a factor of 1.2. The range search of PIO B-tree was up to 5 times faster than that of the B+-tree. Moreover, PIO B-tree outperformed other flash-aware indexes in various synthetic workloads. We also confirmed that PIO B-tree outperforms B+-tree in index traces collected inside the Postgresql DBMS with TPC-C benchmark.