Concurrency control and recovery in database systems
Concurrency control and recovery in database systems
Concurrency control performance modeling: alternatives and implications
ACM Transactions on Database Systems (TODS)
ARIES/IM: an efficient and high concurrency index management method using write-ahead logging
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
Two techniques for on-line index modification in shared nothing parallel databases
SIGMOD '96 Proceedings of the 1996 ACM SIGMOD international conference on Management of data
Concurrency control: methods, performance, and analysis
ACM Computing Surveys (CSUR)
On optimistic methods for concurrency control
ACM Transactions on Database Systems (TODS)
Multiversion concurrency control—theory and algorithms
ACM Transactions on Database Systems (TODS)
Towards self-tuning data placement in parallel database systems
SIGMOD '00 Proceedings of the 2000 ACM SIGMOD international conference on Management of data
Making B+- trees cache conscious in main memory
SIGMOD '00 Proceedings of the 2000 ACM SIGMOD international conference on Management of data
Towards robust distributed systems (abstract)
Proceedings of the nineteenth annual ACM symposium on Principles of distributed computing
R-tree-based data migration and self-tuning strategies in shared-nothing spatial databases
Proceedings of the 9th ACM international symposium on Advances in geographic information systems
Fractal prefetching B+-Trees: optimizing both cache and disk performance
Proceedings of the 2002 ACM SIGMOD international conference on Management of data
Automating physical database design in a parallel database
Proceedings of the 2002 ACM SIGMOD international conference on Management of data
Fast incremental maintenance of approximate histograms
ACM Transactions on Database Systems (TODS)
The Gamma Database Machine Project
IEEE Transactions on Knowledge and Data Engineering
Cache Conscious Indexing for Decision-Support in Main Memory
VLDB '99 Proceedings of the 25th International Conference on Very Large Data Bases
VLDB '90 Proceedings of the 16th International Conference on Very Large Data Bases
Cache Fusion: Extending Shared-Disk Clusters with Shared Caches
Proceedings of the 27th International Conference on Very Large Data Bases
The LHAM log-structured history data access method
The VLDB Journal — The International Journal on Very Large Data Bases
Dynamic Histograms: Capturing Evolving Data Sets
ICDE '00 Proceedings of the 16th International Conference on Data Engineering
Managing Wire Delay in Large Chip-Multiprocessor Caches
Proceedings of the 37th annual IEEE/ACM International Symposium on Microarchitecture
Memory coherence activity prediction in commercial workloads
WMPI '04 Proceedings of the 3rd workshop on Memory performance issues: in conjunction with the 31st international symposium on computer architecture
Concurrent cache-oblivious b-trees
Proceedings of the seventeenth annual ACM symposium on Parallelism in algorithms and architectures
Using elimination to implement scalable and lock-free FIFO queues
Proceedings of the seventeenth annual ACM symposium on Parallelism in algorithms and architectures
C-store: a column-oriented DBMS
VLDB '05 Proceedings of the 31st international conference on Very large data bases
B-tree concurrency control and recovery in page-server database systems
ACM Transactions on Database Systems (TODS)
The end of an architectural era: (it's time for a complete rewrite)
VLDB '07 Proceedings of the 33rd international conference on Very large data bases
OLTP through the looking glass, and what we found there
Proceedings of the 2008 ACM SIGMOD international conference on Management of data
Amdahl's Law in the Multicore Era
Computer
Shore-MT: a scalable storage manager for the multicore era
Proceedings of the 12th International Conference on Extending Database Technology: Advances in Database Technology
Control Theory: a Foundational Technique for Self Managing Databases
ICDEW '07 Proceedings of the 2007 IEEE 23rd International Conference on Data Engineering Workshop
Spatio-temporal memory streaming
Proceedings of the 36th annual international symposium on Computer architecture
Reactive NUCA: near-optimal block placement and replication in distributed caches
Proceedings of the 36th annual international symposium on Computer architecture
FlashLogging: exploiting flash devices for synchronous logging performance
Proceedings of the 2009 ACM SIGMOD International Conference on Management of data
Thread cooperation in multicore architectures for frequency counting over multiple data streams
Proceedings of the VLDB Endowment
Improving OLTP scalability using speculative lock inheritance
Proceedings of the VLDB Endowment
Organization and maintenance of large ordered indices
SIGFIDET '70 Proceedings of the 1970 ACM SIGFIDET (now SIGMOD) Workshop on Data Description, Access and Control
Low overhead concurrency control for partitioned main memory databases
Proceedings of the 2010 ACM SIGMOD International Conference on Management of data
Schism: a workload-driven approach to database replication and partitioning
Proceedings of the VLDB Endowment
Aether: a scalable approach to logging
Proceedings of the VLDB Endowment
Data-oriented transaction execution
Proceedings of the VLDB Endowment
A data-oriented transaction execution engine and supporting tools
Proceedings of the 2011 ACM SIGMOD International Conference on Management of data
Partitioning techniques for fine-grained indexing
ICDE '11 Proceedings of the 2011 IEEE 27th International Conference on Data Engineering
PLP: page latch-free shared-everything OLTP
Proceedings of the VLDB Endowment
High-performance concurrency control mechanisms for main-memory databases
Proceedings of the VLDB Endowment
Proceedings of the VLDB Endowment
Toward scalable transaction processing: evolution of shore-MT
Proceedings of the VLDB Endowment
Hi-index | 0.00 |
Scaling the performance of shared-everything transaction processing systems to highly parallel multicore hardware remains a challenge for database system designers. Recent proposals alleviate locking and logging bottlenecks in the system, leaving page latching as the next potential problem. To tackle the page latching problem, we propose physiological partitioning (PLP). PLP applies logical-only partitioning, maintaining the desired properties of sharedeverything designs, and introduces a multi-rooted B+Tree index structure (MRBTree) that enables the partitioning of the accesses at the physical page level. Logical partitioning and MRBTrees together ensure that all accesses to a given index page come from a single thread and, hence, can be entirely latch free; an extended design makes heap page accesses thread private as well. Moreover, MRBTrees offer an infrastructure for easy repartitioning and allow us to have a lightweight dynamic load balancing mechanism (DLB) on top of PLP. Profiling a PLP prototype running on different multicore machines shows that it acquires 85 and 68%fewer contentious critical sections, respectively, than an optimized conventional design and one based on logical-only partitioning. PLP also improves performance up to almost 50 % over the existing systems, while DLB enhances the system with rapid and robust behavior in both detecting and handling load imbalances.