データベース列ストレージ: 最適な圧縮アルゴリズムを設計するための近道

データベース列ストレージ: 最適な圧縮アルゴリズムを設計するための近道

データベースの保存方法によって、データベース操作の効率が決まります。51CTO データベース チャネルでは、「データベース パフォーマンスの最適化とデバッグ」トピックをお勧めします。

実際、列ストレージは新しい概念ではありません。1985 年にはすでに、SIGMOD カンファレンスの記事「分解ストレージ モデル」で、DSM (分解ストレージ モデル) が比較的詳細に紹介されていました。Sybase は、2004 年頃に列ベースのストレージ Sybase IQ データベース システムを開始しました (200 VLDB の記事「Sybase iq multiplex - 分析用に設計」を参照)。これは主に、オンライン分析やデータ マイニングなどのクエリ集約型アプリケーションに使用されます。

列ストレージ (略称 DSM) は、次の図に示すように、DSM がすべてのレコード内の同じフィールドのデータを集約するのに対し、NSM (N 項ストレージ モデル) は各レコード内のすべてのフィールドのデータを集約するという点で NSM とは異なります。

列ストレージの利点は何ですか?

私の知る限り、列ストレージには主に 2 つの利点があります。

1) 各フィールドのデータを集約して保存すると、クエリに必要なフィールドが少数の場合に、読み取るデータの量を大幅に削減できます。C-Store と MonetDB の著者による調査と分析によると、クエリを多用するアプリケーションの特徴の 1 つは、クエリが通常、少数のフィールドのみを対象としていることです。対照的に、NSM では、毎回レコード全体を読み取る必要があります。

2) フィールドのデータは集約された形式で保存されるため、この集約されたストレージに対してより優れた圧縮/解凍アルゴリズムを設計することが容易になります。

列ストレージはいつ使用するのに適していますか?

OLAP、データ ウェアハウス、データ マイニング、その他のクエリ集約型アプリケーション。もちろん、列ストレージデータベースは更新操作がまったくできないわけではありません。実際、更新操作のパフォーマンスはそれほど悪くなく、一般的には十分です。ただし、一方では独自のクエリパフォーマンスほど良くなく、他方ではOLTPに特化したデータベースであるOracleほど良くないため、一般的には言及されません。

列ストレージが適さないのはどのような場合ですか?

相対的に言えば、挿入や削除の操作が頻繁に行われる状況では特に、OLTP や更新操作には適していません。

1980 年代に登場したコンセプトがなぜ今再び注目を集めているのでしょうか?

2005 年に、M. Stonebraker という老人が書いた VLDB に関する記事 (「One Size Fits All - An Idea Whose Time Has Come and Gone」) がありました。この記事では、時代は変わり、1 つのデータベース製品で世界を統一できると期待していた時代は永遠に過ぎ去ったことを明確に指摘していました。それで、この老人は2005年頃にC-Storeというカラムストア型データベースのプロトタイプシステムを作りました。VLDBやSIGMODなどの主要な国際会議で何度も講演した後、何人かの人を集めてVerticaという会社を立ち上げ、それを商品化し、データウェアハウスやオンライン分析などの市場に注力しました。最近かなり人気があるようです。ちなみに、この老人は上記のアイデアを実現するために、同時にH-Storeというメインメモリ型データベースのプロトタイプシステムも作りました。あまり講演せずに、何人かの人を集めてVoltDBという会社を立ち上げ、それを商品化し、オンライントランザクション処理に注力しましたが、最近はあまりうまくいっていないようで、これはOracleのボスと直接対立しているのかもしれません。

これは、1970 年代にリレーショナル データベース管理システムの実装をリードし、無数のスパムがあった Ingres を作成した M. Stonebraker を彷彿とさせます。このプロトタイプ システムに基づいて、Sybase、Microsoft SQL Server、NonStop SQL、Informix など、多くの商用データベース ソフトウェアが開発されました。いわゆる最先端のオープン ソース データベース システムである PostgreSQL も、Ingres の後継ブランチです。

元のタイトル:列ストレージ技術について

リンク: http://www.cnblogs.com/happyy/archive/2010/04/26/1721481.html

【編集者のおすすめ】

  1. Oracle ストアド プロシージャの作成経験の概要
  2. ストレージ構造: Oracle 論理ストレージ構造
  3. 次世代データストレージアーキテクチャの包括的な概要
  4. SQL Server ストアド プロシージャの命名規則
  5. スクリプトを使用して DB2 ストアド プロシージャの開発を高速化する

<<:  SCO Unix ディスク ブロック割り当てアルゴリズム

>>:  LVS セットアップノート: 負荷分散アルゴリズム

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

基準に問題があり、人工知能は間違った方向に向かっている

この記事は公開アカウント「Reading Core Technique」(ID: AI_Discov...

...

OpenVINOの新バージョンがリリースされ、視覚を超えた音声をサポートし、よりインテリジェントなエッジ開発者の力を高める

本日、インテルとその開発者エコシステム パートナーは、「インテリジェント エッジに焦点を当て、開発者...

脳コンピューターインターフェースツール:脳波からテキストまで、必要なのは機械翻訳モデルだけ

[[320655]]この記事はLeiphone.comから転載したものです。転載する場合は、Leip...

上海交通大学が「人間行動理解エンジン」を発表:AIが超大作映画のあらゆる行動をフレームごとに理解

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

人工知能の未来を見据えて:2020年のAIの8つの主要トレンド

人工知能は、最も急速に成長し、最も予測不可能な産業の 1 つです。ディープラーニング、AI 駆動型機...

ロボットがすべての仕事を奪ったら、人間はどうなるでしょうか?

[51CTO.com クイック翻訳] 過去1年間、人工知能と自動化技術が人間の雇用と労働市場に与え...

仮想現実プログラムを使用してテストされた人工視覚技術は、視覚障害者の自立を支援する

科学技術が発展するにつれ、人類への科学技術の貢献が徐々に明らかになってきています。現在、世界中の科学...

AIアートがブームになっていますが、今後はどうなるのでしょうか?

[[279415]]この記事のイラストはすべて、AIアートの第一人者であるドイツ人アーティスト、マ...

AI を活用した予測分析で物流に革命を起こす

今日の急速に変化する物流の世界では、効率が鍵となります。世界経済は商品の円滑な流れに完全に依存してい...

...

これらのブラウザのAI拡張機能は素晴らしい

ご存知のとおり、拡張機能を追加することによってのみ、ブラウザは最大限の可能性を発揮し、効率を 2 倍...

ディープラーニングがロボットの変形可能な物体の取り扱いにどのように役立つか

翻訳者 | 李睿校正:孫淑娟人間にとって、変形可能な物体を処理することは、硬い物体を処理することより...

アイティ族テクニカルクリニック第6回

【51CTO.comオリジナル記事】 [51CTO オリジナル記事、パートナーサイトに転載する場合は...