Skip to main content
QUICK REVIEW

[論文レビュー] Compacting Transactional Data in Hybrid OLTP & OLAP Databases

Florian Funke, Alfons Kemper|arXiv (Cornell University)|Aug 1, 2012
Distributed systems and fault tolerance参考文献 18被引用数 5
ひとこと要約

本論文は、ハイブリッドOLTP/OLAPデータベースにおける非同期コンパクト化技術を提案し、頻繁にアクセスされるホットデータとまれにアクセスされるコールドデータを分離し、コールドデータを圧縮して巨大仮想メモリページに格納することで、メモリ使用量を削減し、OLAPクエリ処理を高速化する。このアプローチにより、バックグラウンドスレッドに圧縮と再編成を移譲することで、OLTPスループットへの影響を最小限に抑えつつ顕著な性能向上が達成される。

ABSTRACT

Growing main memory sizes have facilitated database management systems that keep the entire database in main memory. The drastic performance improvements that came along with these in-memory systems have made it possible to reunite the two areas of online transaction processing (OLTP) and online analytical processing (OLAP): An emerging class of hybrid OLTP and OLAP database systems allows to process analytical queries directly on the transactional data. By offering arbitrarily current snapshots of the transactional data for OLAP, these systems enable real-time business intelligence. Despite memory sizes of several Terabytes in a single commodity server, RAM is still a precious resource: Since free memory can be used for intermediate results in query processing, the amount of memory determines query performance to a large extent. Consequently, we propose the compaction of memory-resident databases. Compaction consists of two tasks: First, separating the mutable working set from the immutable "frozen" data. Second, compressing the immutable data and optimizing it for efficient, memory-consumption-friendly snapshotting. Our approach reorganizes and compresses transactional data online and yet hardly affects the mission-critical OLTP throughput. This is achieved by unburdening the OLTP threads from all additional processing and performing these tasks asynchronously.

研究の動機と目的

  • 高いトランザクションスループット要件によって、データ圧縮が妨げられる、メモリ内ハイブリッドOLTP/OLAPデータベースにおけるメモリ効率性の課題に対処すること。
  • データレイアウトと圧縮の最適化により、トランザクションデータ上で直接リアルタイムの分析クエリ処理を効率的に行えるようにすること。
  • OLTPトランザクションスループットを低下させることなく、メモリ消費量を削減し、クエリパフォーマンスを向上させること。
  • コールドデータチャンクをコンパクト化に適したものとして特定するための軽量でハードウェア支援型の監視メカニズムを開発すること。

提案手法

  • ハードウェア支援型で低オーバーヘッドの監視コンponentを用いて、データアクセスパターンを追跡し、ホットデータとコールドデータのセグメントを特定する。
  • アクセス頻度とワーキングセットの仮定に基づき、データベースをホット(変更可能)データとコールド(変更不可)データに分離する。
  • コールドデータチャンクに損失なし圧縮を適用し、それらを巨大仮想メモリページに格納することで、キャッシュ効率を向上させ、メモリフットプリントを削減する。
  • OLTPトランザクション処理とは非同期で、独立してデータ再編成と圧縮を実行することで、パフォーマンス劣化を回避する。
  • 圧縮データ上のプレフィックススキャンおよび範囲スキャンを高速化するために、順序保持辞書とメモリ効率の良い補助インデックス(例:赤黒木)を採用する。
  • コールドデータに対して即時削除ではなく無効化マーカーを用いることで、高い無効化率下でもスキャンパフォーマンスを維持する。

実験結果

リサーチクエスチョン

  • RQ1高いパフォーマンスを要求するOLTPシステムに、トランザクションスループットの劣化を引き起こさずにデータ圧縮を効果的に統合できるか?
  • RQ2アクティブなトランザクション処理への干渉を最小限に抑えるために、コールドデータを効率的に特定・分離する方法は何か?
  • RQ3ハイブリッドOLTP/OLAPシステムにおいて、メモリ消費量とOLAPクエリパフォーマンスの両方を最適化するための圧縮およびストレージ技術は何か?
  • RQ4非同期コンパクト化は、分析クエリ実行の向上を図る一方で、OLTPパフォーマンスにどの程度の影響を与えるか?
  • RQ5順序保持辞書とコンパクトな補助インデックスを用いることで、圧縮データ上のクエリパフォーマンスにどのような影響があるか?

主な発見

  • 提案されたコンパクト化技術により、メモリ消費量が顕著に削減され、OLTPスループットはほぼ理想に近い水準を維持する。1/36のデータが無効化されても、パフォーマンス劣化は4.5%から7.9%にとどまる。
  • ホット/コールドクラスタリング機構により、データベースの大部分がコールドデータとして特定され、効果的な圧縮が可能になる。
  • 選択性が3.3%を超える場合、ハッシュベースの検索よりも順序保持辞書が優れているため、中程度から高い選択性を持つ分析クエリに効率的である。
  • 赤黒木に基づく補助インデックスは、エントリあたり24バイトのメモリ使用量に抑えられ、低選択性クエリにおいて辞書を上回る性能を発揮する。
  • 巨大メモリページにコールドデータを圧縮格納することで、キャッシュ局所性が向上し、特にスキャン集約的な分析ワークロードにおいてクエリ実行速度が向上する。
  • 凍結されたチャンクに対する無効化機構により、効率的なメモリレイアウトとアクセスパターンのおかげで、極端な無効化率下でも高いスキャンパフォーマンスが維持される。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。