メインコンテンツまでスキップ
メインコンテンツまでスキップ

テーブルエンジン

テーブルエンジン(テーブルのタイプ)は以下を決定します:

  • データの保存方法と場所、書き込み先、読み込み元。
  • サポートされているクエリとその方法。
  • 同時データアクセス。
  • インデックスの使用(存在する場合)。
  • マルチスレッドリクエスト実行が可能かどうか。
  • データレプリケーションパラメータ。

エンジンファミリー

MergeTree

高負荷タスクに対する最も汎用的で機能的なテーブルエンジンです。これらのエンジンが共有する特性は、迅速なデータ挿入とその後のバックグラウンドデータ処理です。 MergeTree ファミリーのエンジンはデータレプリケーション(Replicated* バージョンのエンジン)、パーティショニング、二次データスキッピングインデックスなど、他のエンジンではサポートされていないさまざまな機能をサポートしています。

ファミリー内のエンジン:

MergeTreeエンジン
MergeTree
ReplacingMergeTree
SummingMergeTree
AggregatingMergeTree
CollapsingMergeTree
VersionedCollapsingMergeTree
GraphiteMergeTree

Log

最小限の機能を持つ軽量な エンジン です。多くの小さなテーブル(約100万行まで)を迅速に書き込む必要がある場合や、後で全体として読み込む場合に最も効果的です。

ファミリー内のエンジン:

Logエンジン
TinyLog
StripeLog
Log

インテグレーションエンジン

他のデータストレージおよび処理システムと通信するためのエンジンです。

ファミリー内のエンジン:

インテグレーションエンジン
ODBC
JDBC
MySQL
MongoDB
Redis
HDFS
S3
Kafka
EmbeddedRocksDB
RabbitMQ
PostgreSQL
S3Queue
TimeSeries

特殊エンジン

ファミリー内のエンジン:

特殊エンジン
Distributed
Dictionary
Merge
Executable
File
Null
Set
Join
URL
View
Memory
Buffer
External Data
GenerateRandom
KeeperMap
FileLog

仮想カラム

仮想カラムは、エンジンソースコードで定義された不可欠なテーブルエンジン属性です。

CREATE TABLE クエリで仮想カラムを指定するべきではなく、SHOW CREATE TABLE および DESCRIBE TABLE クエリの結果にも表示されません。仮想カラムは読み取り専用であり、データを挿入することはできません。

仮想カラムからデータを選択するには、SELECT クエリでその名前を指定する必要があります。 SELECT * では仮想カラムの値は返されません。

テーブルに仮想カラムと同じ名前のカラムを作成すると、その仮想カラムにアクセスできなくなります。これを行うことは推奨されません。衝突を避けるために、仮想カラム名には通常アンダースコアがプレフィックスとして付けられます。