1. ホーム
  2. sql

[解決済み] カラムナデータベースとは?

2022-11-09 02:42:52

質問

倉庫管理の仕事をしています。

私はColumnar Databasesと、それが提供するデータ検索の速度に興味をそそられています。

複数の質問があります。

  • 列指向データベースはどのように機能するのですか?
  • リレーショナル・データベースとの違いは?

どのように解決するのですか?

列指向データベースはどのように動作するのですか?

カラムナデータベースは 概念 ではなく、特定の アーキテクチャ/実装 . 言い換えれば、これらのデータベースがどのように機能するかについての特定の説明はありません。実際、いくつかのデータベースは伝統的な行指向の DBMS をベースにしており、単に 1 つ (または多くの場合 2 つ) の列を持つテーブルに情報を格納しています (そして列データに簡単にアクセスするために必要な層を追加しています)。

リレーショナル データベースとはどのように違うのでしょうか。 一般に、従来の(行指向の)データベースとは、以下の点で異なっています...

  • パフォーマンス...
  • ストレージ要件 ...
  • スキーマの変更のしやすさ ...

...DBMSの特定のユースケースにおいて .

特に、典型的な用途が、与えられたエンティティのすべてまたはほとんどの列を取得しようとするのではなく、限られた数の列で集約値を計算することである場合、前述の領域で利点を提供します。

遊んでみるためにインストールできる列指向データベースの試用版はありますか。(私は Windows 7 を使用しています) はい、商用、フリー、オープンソースのカラムナデータベースの実装があります。の末尾にあるリストを参照してください。 Wikipedia の記事 を手始めに。

これらの実装のうち、いくつかは 特定のニーズ (例えば、非常に小さなフットプリント、高度に圧縮可能なデータの配布、または予備行列のエミュレーションなど) に対処するために導入されたものであり、それ自体が汎用列指向 DBMS を提供するものではないので注意が必要です。

注: いくつかの列指向 DBMS の単一目的の指向についての発言は、これらの実装を批判するものではなく、むしろ DBMS のためのこのようなアプローチが、レコード実体を格納するためのより自然なアプローチ (そして確かにより広く使用されている) から外れていることを示す追加のものです。 その結果、このアプローチは行指向のアプローチが満足のいくものでない場合に使用され、そのため、以下のような傾向があります。

a) 特定の目的のために目標とされる b) 「汎用」、「試行錯誤」、「表形式」アプローチに関する作業よりも、リソースや関心が少ない。

暫定的に エンティティ-アトリビュート-バリュー (EAV)データモデルは、あなたが検討したいかもしれない代替ストレージ戦略かもしれません。 純粋な列挙型 DB モデルとは異なりますが、EAV は列挙型 DB のいくつかの特性を共有しています。