文章目录
ABSTRACT
- memory in database systems grows,
- entire database tables,
- or even databases,
- fit in the system’s memory,
- making in-memory database operations
- more prevalent.
- disk-based to in-memory database systems
- contributed to
- a move from row-wise to columnar data storage.
为啥放到内存里就要用按列了呢?
- common database workloads
- grown beyond OLTP to
- online analytical processing and data mining.
- These workloads
- analyze huge datasets
- irregular and not indexed,
- making traditional database operations
- like joins more expensive.
- analyze huge datasets
第二段
- dedicated hardware
- to accelerate in-memory database operations.
- accelerate the selection process of
- compacting a single column into a linear column of selected data,
- joining two sorted columns via merging,
- and sorting a column.
啥叫compacting a single column into a linear column of selected data
- implement a prototype of this system using FPGAs and
- show substantial improvements in
- both absolute throughput
- and
- utilization of memory bandwidth.
- Using the prototype as a guide,
- we explore how the hardware resources required
- by our design change with the desired throughput.
1. INTRODUCTION
- Database systems
- historically
- constrained by disk performance.
- with advances of memory technology
- amount of main memory available in large database
systems - has grown enough that many large database tables
now reside entirely in main memory.
- amount of main memory available in large database
- While Moore’s law continues to hold and the number of transistors available to chip architects continues to increase, power constraints limit the number of logic transistors that can be active at any given time on a chip [3].
- unlikely
- general purpose processing elements
- be able to fully utilize the amount of memory bandwidth available to a chip
- while performing all but the most basic database operations.
你很难充分利用主存提供的高带宽,当然除了一些基本的操作喽!
- increased join performance into the 100s of million tuples per second [7,6],
- 64-bit tuples
- this corresponds to a data bandwidth
- of one to five gigabytes per second.
啥意思啊?
- Modern chips,
- achieve memory bandwidth over 100 GB/s [1].
- using general purpose compute is leaving performance on the table.
啥意思啊?