1SEP1995
GMEanglish-thailand opened this issue · 2 comments
Industrial : Joins
Location: Diamond 3map
Chair: Benny Kimelfeld
pdftxt
Joins on Encoded and Partitioned Data
Jae-Gil Lee* (KAIST)*,Gopi Attaluri (IBM Software Group),Ronald Barber (IBM Almaden Research Center),Naresh Chainani (IBM Software Group),Oliver Draese (IBM Software Group),Frederick Ho (IBM Informix),Stratos Idreos (Harvard University),Min-Soo Kim (DGIST),Sam Lightstone (IBM Software Group),Guy Lohman (IBM Almaden Research Center),Konstantinos Morfonios (Oracle),Keshava Murthy (IBM Informix),Ippokratis Pandis (IBM Almaden),Lin Qiao (LinkedIn),Vijayshankar Raman (IBM Almaden Research Center),Vincent Kulandai Samy (IBM Almaden Research Center),Richard Sidle (IBM Almaden Research Center),Knut Stolze (IBM Software Group),Liping Zhang (IBM Software Group)
Compression has historically been used to reduce the cost of storage, I/Os from that storage, and buffer pool utilization, at the expense of the CPU required to decompress data every time it is queried. However, significant additional CPU efficiencies can be achieved by deferring decompression as late in query processing as possible and performing query processing operations directly on the still-compressed data. In this paper, we investigate the benefits and challenges of performing joins on compressed (or encoded) data. We demonstrate the benefit of independently optimizing the compression scheme of each join column, even though join predicates relating values from multiple columns may require translation of the encoding of one join column into the encoding of the other. We also show the benefit of compressing "payload" data other than the join columns "on the fly," to minimize the size of hash tables used in the join. By partitioning the domain of each column and defining separate dictionaries for each partition, we can achieve even better overall compression as well as increased flexibility in dealing with new values introduced by updates. Instead of decompressing both join columns participating in a join to resolve their different compression schemes, our system performs a light-weight mapping of only qualifying rows from one of the join columns to the encoding space of the other at run time. Consequently, join predicates can be applied directly on the compressed data. We call this procedure encoding translation. Two alternatives of encoding translation are developed and compared in the paper. We provide a comprehensive evaluation of these alternatives using product implementations of each on the TPC-H data set, and demonstrate that performing joins on encoded and partitioned data achieves both superior performance and excellent compression.
30.14622317.
1654857658.e3ff449
PARESSWALONDKPQWALEANGLISH1995lineslineEpline KAILTSARDEAR NIRFNSUVARNATITTHAILIAND
⅝⅝⅝⅝⅝⅝⅝⅝⅝⅝⅝⅝⅝⅝⅝⅝สีขากากิจงหลุดร่วงเปิดถ้ายอกรหัส