ACM Transactions on Database Systems (TODS)
Query optimization in a memory-resident domain relational calculus database system
ACM Transactions on Database Systems (TODS)
AlphaSort: a RISC machine sort
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
Tolerating latency through software-controlled data prefetching
Tolerating latency through software-controlled data prefetching
SIGMOD '85 Proceedings of the 1985 ACM SIGMOD international conference on Management of data
PRISMA/DB: A Parallel, Main Memory Relational DBMS
IEEE Transactions on Knowledge and Data Engineering
Flattening an Object Algebra to Provide Performance
ICDE '98 Proceedings of the Fourteenth International Conference on Data Engineering
VLDB '98 Proceedings of the 24rd International Conference on Very Large Data Bases
A Study of Index Structures for Main Memory Database Management Systems
VLDB '86 Proceedings of the 12th International Conference on Very Large Data Bases
Database Architecture Optimized for the New Bottleneck: Memory Access
VLDB '99 Proceedings of the 25th International Conference on Very Large Data Bases
What Happens During a Join? Dissecting CPU and Memory Optimization Effects
VLDB '00 Proceedings of the 26th International Conference on Very Large Data Bases
Monet And Its Geographic Extensions: A Novel Approach to High Performance GIS Processing
EDBT '96 Proceedings of the 5th International Conference on Extending Database Technology: Advances in Database Technology
Cache Conscious Algorithms for Relational Query Processing
VLDB '94 Proceedings of the 20th International Conference on Very Large Data Bases
MIL primitives for querying a fragmented world
The VLDB Journal — The International Journal on Very Large Data Bases
Optimizing main-memory join on modern hardware
Optimizing main-memory join on modern hardware
Macro- and Micro-parallelism in a DBMS
Euro-Par '01 Proceedings of the 7th International Euro-Par Conference Manchester on Parallel Processing
An efficient cache conscious multi-dimensional index structure
Information Processing Letters
Generic database cost models for hierarchical memory systems
VLDB '02 Proceedings of the 28th international conference on Very Large Data Bases
External perfect hashing for very large key sets
Proceedings of the sixteenth ACM conference on Conference on information and knowledge management
Tlink-tree: main memory index structure with concurrency control and recovery
ACST'07 Proceedings of the third conference on IASTED International Conference: Advances in Computer Science and Technology
The Evolution of Vertical Database Architectures --- A Historical Review (Keynote Talk)
SSDBM '08 Proceedings of the 20th international conference on Scientific and Statistical Database Management
Integrating Data Sources and Network Analysis Tools to Support the Fight Against Organized Crime
PAISI, PACCF and SOCO '08 Proceedings of the IEEE ISI 2008 PAISI, PACCF, and SOCO international workshops on Intelligence and Security Informatics
Indexing internal memory with minimal perfect hash functions
SBBD '08 Proceedings of the 23rd Brazilian symposium on Databases
Proceedings of the VLDB Endowment
An efficient cache conscious multi-dimensional index structure
Information Processing Letters
An enhanced main memory index structure employing the level prefetching technique
ICCSA'03 Proceedings of the 2003 international conference on Computational science and its applications: PartII
CST-trees: cache sensitive t-trees
DASFAA'07 Proceedings of the 12th international conference on Database systems for advanced applications
Cache conscious trees: how do they perform on contemporary commodity microprocessors?
ICCSA'07 Proceedings of the 2007 international conference on Computational science and its applications - Volume Part I
Minimal perfect hashing: A competitive method for indexing internal memory
Information Sciences: an International Journal
Llama: leveraging columnar storage for scalable join processing in the MapReduce framework
Proceedings of the 2011 ACM SIGMOD International Conference on Management of data
PhotoCube: effective and efficient multi-dimensional browsing of personal photo collections
Proceedings of the 1st ACM International Conference on Multimedia Retrieval
Efficiently compiling efficient query plans for modern hardware
Proceedings of the VLDB Endowment
Cache conscious trees on modern microprocessors
Proceedings of the 4th International Conference on Uniquitous Information Management and Communication
The VLDB Journal — The International Journal on Very Large Data Bases
Stochastic database cracking: towards robust adaptive indexing in main-memory column-stores
Proceedings of the VLDB Endowment
Managing a fragmented XML data cube with oracle and timesten
Proceedings of the fifteenth international workshop on Data warehousing and OLAP
High throughput heavy hitter aggregation for modern SIMD processors
Proceedings of the Ninth International Workshop on Data Management on New Hardware
An experimental analysis of iterated spatial joins in main memory
Proceedings of the VLDB Endowment
Hi-index | 0.00 |
In the past decade, advances in the speed of commodity CPUs have far out-paced advances in memory latency. Main-memory access is therefore increasingly a performance bottleneck for many computer applications, including database systems. In this article, we use a simple scan test to show the severe impact of this bottleneck. The insights gained are translated into guidelines for database architecture, in terms of both data structures and algorithms. We discuss how vertically fragmented data structures optimize cache performance on sequential data access. We then focus on equi-join, typically a random-access operation, and introduce radix algorithms for partitioned hash-join. The performance of these algorithms is quantified using a detailed analytical model that incorporates memory access cost. Experiments that validate this model were performed on the Monet database system. We obtained exact statistics on events such as TLB misses and L1 and L2 cache misses by using hardware performance counters found in modern CPUs. Using our cost model, we show how the carefully tuned memory access pattern of our radix algorithms makes them perform well, which is confirmed by experimental results.