Skip to main content
QUICK REVIEW

[論文レビュー] Lara: A Key-Value Algebra underlying Arrays and Relations

David Hutchison, Bill Howe|arXiv (Cornell University)|Apr 12, 2016
Advanced Database Systems and Queries参考文献 3被引用数 4
ひとこと要約

Laraは、結合的テーブル、和集合、結合、拡張操作を用いて、配列、関係、グラフ、キー値ストアを1つの形式的枠組みに統合する包括的なキー値代数である。Laraは、証明済みの恒等式と同値性を備えた共通の代数的基盤を提供することで、異種のデータ処理システム間でのスムーズな翻訳と最適化を可能にする。

ABSTRACT

Data processing systems roughly group into families such as relational, array, graph, and key-value. Many data processing tasks exceed the capabilities of any one family, require data stored across families, or run faster when partitioned onto multiple families. Discovering ways to execute computation among multiple available systems, let alone discovering an optimal execution plan, is challenging given semantic differences between disparate families of systems. In this paper we introduce a new algebra, Lara, which underlies and unifies algebras representing the families above in order to facilitate translation between systems. We describe the operations and objects of Lara---union, join, and ext on associative tables---and show her properties and equivalences to other algebras. Multi-system optimization has a bright future, in which we proffer Lara for the role of universal connector.

研究の動機と目的

  • 異なるデータ処理システム(例:リレーショナル、アレイ、グラフ、ファイルシステム)間で意味的相互運用性を欠いているという課題に対処する。
  • 複数のシステムファミリー間でワークロードを翻訳および最適化できる普遍的な代数的基盤を提供する。
  • 配列、関係、グラフ、キー値ストアの論理的表現を統合することで、マルチシステム最適化を可能にする。
  • 形式的同値性と恒等式を用いて、異種システム間での効率的な実行計画の構築を促進する。
  • クエリ言語やDSLのための洗練され、合成可能な言語基盤を提供することで、実用的採用を支援する。

提案手法

  • 結合的テーブルをコアデータ構造として定義し、キーがドメインV内の値にマッピングされる。サポート(supp)は非デフォルトのキーを示す。
  • 3つの原始的操作を導入する:和集合(⊕)は縦方向の連結と和算を、厳密な結合(⋈⊗)は横方向の連結と乗算を、拡張(extf)は関数適用をそれぞれ実行する。
  • 緩和された結合(⋈)をサポートし、欠落値に対して自動的にプロモーションと1での乗算を実行することで、スパースデータに対する堅牢な処理を可能にする。
  • 代数的性質を用いて操作を形式化する:和集合を和として、結合を積として、extを一般化されたマップとして定義し、恒等式と分配法則を含む。
  • Laraの操作とリレーショナル代数、アレイ代数(例:CombBLAS)、離散畳み込みにおける操作との間の同値性を示す。
  • 操作の合成のための構文と意味論を提供する。名前の変更、射影、実用的用途のための再帰的または反復的構造を含む。

実験結果

リサーチクエスチョン

  • RQ11つの統一された代数的枠組みが、配列、関係、グラフ、キー値ストアのコア操作を表現・関連付けることができるか?
  • RQ2Laraの操作とリレーショナル、アレイ、グラフ処理システムの操作との間で、代数的恒等式と同値性を確立できるか?
  • RQ3Laraはどの程度、異種システム間の最適化と翻訳を可能にするか?
  • RQ4実行計画最適化を支援するための、Laraの操作の形式的性質(例:分配法則、結合則)は何か?
  • RQ5実世界での利用を想定し、コンprehension、変数代入、再帰などの実用的言語機能をLaraに拡張できるか?

主な発見

  • Laraは、結合的テーブルを用いて、リレーショナル、アレイ、グラフ、キー値処理を1つの代数的枠組みで成功裏に統合した。
  • 本稿では、Laraの操作とリレーショナル代数(例:一般化除法、外部結合)、アレイ代数(例:CombBLAS)、離散畳み込みにおける操作との間で、形式的同値性を確立した。
  • 欠落値に対して自動プロモーションと1での乗算を実行する緩和された結合により、スパースデータの堅牢な処理が可能となり、マルチシステム環境における効率的実行を支援する。
  • 結合を和集合の上に分配するような分配法則がサポートされており、代数的書き換えによる最適化が可能である。
  • 具体的な例として、Lara操作を用いた2項移動和畳み込みの実装を提示し、複数ステップにわたる正しさと合成可能性を示した。
  • この枠組みは拡張可能である:コンprehension、変数代入、再帰などの拡張を追加することで、実用的なクエリやアルゴリズム記述を支援できる。

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

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

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

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