- はじめに
- Design Trade-offs for a Robust Dynamic Hybrid Hash Join
- Plush: A Write-Optimized Persistent Log-Structured Hash-Table
- Cardinality Estimation in DBMS: A Comprehensive Benchmark Evaluation
- Your Read is Our Priority in Flash Storage
- Cosine: A Cloud-Cost Optimized Self-Designing Key-Value Storage Engine
- Lotus: Scalable Multi-Partition Transactions on Single-Threaded Partitioned Databases
- Memory-Optimized Multi-Version Concurrency Control for Disk-Based Database Systems
- A Scalable and Generic Approach to Range Joins
- Designing an Open Framework for Query Optimization and Compilation
- おわりに
はじめに
今度から続・データベース論文輪読会に参加するのでそのアップとして VLDB 2022 のアブストラクトをひたすら眺めて、雑にメモっていく。流し読みなので色々間違っている可能性はだいぶある。
対象は以下のサイトに掲載されているもので、タイトルから気になったやつ。
Design Trade-offs for a Robust Dynamic Hybrid Hash Join
ハイブリッドハッシュジョイン(以下、HHJ)の性能評価に関する話。
HHJ を用いる場合にパーティション数が性能にどう影響するのか、最小の CPU コストで最大のメモリ使用率を得るためのパーティション追加やパーティションの動的選択について既存の研究にあるアルゴリズムと比較している。
ストレージは HDD, SSD, EBS を使っていて、 AsterixDB のコンテキストとしてアルゴリズムは実装されている。
面白そう。
Plush: A Write-Optimized Persistent Log-Structured Hash-Table
不揮発性メモリの利点である低い書き込みレイテンシと小さい書き込み読み込みの帯域幅を使って性能の向上を図るらしい。
これはパッとみてよくわからなかった。
Cardinality Estimation in DBMS: A Comprehensive Benchmark Evaluation
カーディナリティ推定において、その目的である実環境でどの程度有効かというものを計測するベンチマークについての話。
PostgreSQL に各種アルゴリズムを組み込み、クエリプランの精度向上にどの程度有効であるかなどを総合的に評価するというのが主題っぽい。
既存の推定指標への問題点とそれを改善した新たな指標も提示しているらしい。
面白そう。
Your Read is Our Priority in Flash Storage
フラッシュストレージにおいて read-after-write (以下、RAW) は同期的な読み込みを書き込みによって遅くさせる場合がありそれがトランザクションのスループットとレイテンシを悪化させる問題を提起した上で、それらを解決する新しいストレージインターフェースとバッファープールを提案している。
Cosine: A Cloud-Cost Optimized Self-Designing Key-Value Storage Engine
入力のワークロード、クラウドサービスの予算、目標パフォーマンスと SLA を与えることで完璧に近いストレージエンジンの設計を見つけ出し、実際のコードとして具現化するストレージエンジンについての紹介。
単純にこれが何か気になる。
Lotus: Scalable Multi-Partition Transactions on Single-Threaded Partitioned Databases
H-Store/VoltDB の同時実行制御の再検討。マルチパーティション(?)ワークロードでパフォーマンスが低下する問題の改善に念頭をおいている。
面白そう。
Memory-Optimized Multi-Version Concurrency Control for Disk-Based Database Systems
メモリに最適化した MVCC の提案。バージョニング情報をフラッシュすることなくメモリ上に保持することが可能であること、それによってオーバーヘッドを低下されることができるらしい。
なかなか面白そう。
A Scalable and Generic Approach to Range Joins
eq join ではない range join などでは、入れ子を伴うループが発生する場合があり、これが許容できない処理時間をもたらす場合がある。
それを解決するために kd-tree ベースの多次元 range join の提案と性能評価を行う。
面白そう。
Designing an Open Framework for Query Optimization and Compilation
クエリコンパイルと最適化は開発者の利便性や柔軟性、拡張性を犠牲にしてパフォーマンスの向上をもたらす事への問題提起とそれを解決するために MLIR をベースにしたクエリコンパイルスタックの提案。
それらを LingoDB に組み込み、性能評価を行う。
面白そう。
おわりに
10 本読むはずだったけど思いの外面白そうなやつが見つかってきたのでここまで。
ここから気になるやつを一本選んで読んでみる。