メインコンテンツへスキップ
メインコンテンツへスキップ

特殊なテーブルエンジン

テーブルエンジンには主に3つのカテゴリがあります:

残りのエンジンはその用途が独自であり、まだファミリーにグループ化されていないため、この「特殊」カテゴリに分類されています。

ページ説明
Alias テーブルエンジンAlias テーブルエンジンは、別のテーブルへの透過的なプロキシを作成します。すべての操作は対象テーブルに転送され、エイリアス自体にはデータは保存されません。
Distributed テーブルエンジンDistributed エンジンを使用するテーブルはそれ自体ではデータを保存しませんが、複数のサーバーにまたがる分散クエリ処理を可能にします。読み取りは自動的に並列化されます。読み取り時には、存在する場合、リモートサーバー上のテーブル索引が使用されます。
Dictionary テーブルエンジンDictionary エンジンは、辞書データを ClickHouse テーブルとして表示します。
Merge テーブルエンジンMerge エンジン (MergeTree と混同しないでください) は、それ自体ではデータを保存しませんが、任意の数の他のテーブルを同時に読み取ることができます。
Executable および ExecutablePool テーブルエンジンExecutable および ExecutablePool テーブルエンジンでは、ユーザーが定義したスクリプト (行を stdout に書き込む) から行が生成されるテーブルを定義できます。
File テーブルエンジンFile テーブルエンジンは、サポートされているファイルフォーマット (TabSeparatedNative など) のいずれかでデータをファイルに保持します。
Null テーブルエンジンNull テーブルに書き込むと、データは無視されます。Null テーブルから読み取ると、空の応答が返されます。
Set テーブルエンジン常に RAM 上に保持されるデータセットです。IN 演算子の右辺で使用することを目的としています。
Join テーブルエンジンJOIN 操作で使用するための、オプションの事前構築済みデータ構造です。
URL テーブルエンジンリモートの HTTP/HTTPS サーバーとの間でデータをやり取りします。このエンジンは File エンジンに似ています。
View テーブルエンジンビューの実装に使用されます (詳細は CREATE VIEW query を参照してください) 。データは保存せず、指定された SELECT クエリのみを保存します。テーブルから読み取ると、このクエリが実行されます (また、クエリから不要なカラムはすべて削除されます) 。
Memory テーブルエンジンMemory エンジンは、データを RAM に非圧縮のまま保存します。データは、読み取られたときに受け取ったのとまったく同じ形式で保存されます。言い換えると、このテーブルからの読み取りにはコストがまったくかかりません。
Buffer テーブルエンジン書き込むデータを RAM にバッファリングし、定期的に別のテーブルへフラッシュします。読み取り時には、バッファと別のテーブルの両方から同時にデータが読み取られます。
クエリ処理のための外部データClickHouse では、SELECT クエリとともに、クエリ処理に必要なデータをサーバーに送信できます。このデータは一時テーブルに格納され、クエリ内で使用できます (たとえば IN 演算子で使用します) 。
GenerateRandom テーブルエンジンGenerateRandom テーブルエンジンは、指定したテーブルスキーマに対してランダムデータを生成します。
KeeperMap テーブルエンジンこのエンジンを使用すると、Keeper/ZooKeeper クラスターを、線形化可能な書き込みと逐次一貫性のある読み取りを備えた一貫性のあるキー・バリューストアとして利用できます。
FileLog テーブルエンジンこのエンジンでは、アプリケーションログファイルをレコードのストリームとして処理できます。