ClickHouse/docs/ja/engines/table-engines/index.md
2024-11-18 11:58:58 +09:00

91 lines
5.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
slug: /ja/engines/table-engines/
toc_folder_title: テーブルエンジン
toc_priority: 26
toc_title: はじめに
---
# テーブルエンジン
テーブルエンジン(テーブルの種類)は次の点を決定します:
- データの保存方法と保存場所、書き込みおよび読み込み先。
- サポートされているクエリとその方法。
- 同時データアクセス。
- インデックスの使用(存在する場合)。
- マルチスレッドでの要求実行が可能かどうか。
- データレプリケーションのパラメータ。
## エンジンファミリー {#engine-families}
### MergeTree {#mergetree}
高負荷タスク向けの最も汎用的かつ機能的なテーブルエンジンです。これらエンジンの共通の特徴は、データの迅速な挿入とその後のバックグラウンドでのデータ処理です。`MergeTree`ファミリーエンジンはデータのレプリケーション(エンジンの[Replicated\*](../../engines/table-engines/mergetree-family/replication.md#table_engines-replication) バージョン)、パーティション、二次データスキッピングインデックスなど、他のエンジンでサポートされていない機能をサポートしています。
このファミリーに含まれるエンジン:
- [MergeTree](../../engines/table-engines/mergetree-family/mergetree.md#mergetree)
- [ReplacingMergeTree](../../engines/table-engines/mergetree-family/replacingmergetree.md#replacingmergetree)
- [SummingMergeTree](../../engines/table-engines/mergetree-family/summingmergetree.md#summingmergetree)
- [AggregatingMergeTree](../../engines/table-engines/mergetree-family/aggregatingmergetree.md#aggregatingmergetree)
- [CollapsingMergeTree](../../engines/table-engines/mergetree-family/collapsingmergetree.md#table_engine-collapsingmergetree)
- [VersionedCollapsingMergeTree](../../engines/table-engines/mergetree-family/versionedcollapsingmergetree.md#versionedcollapsingmergetree)
- [GraphiteMergeTree](../../engines/table-engines/mergetree-family/graphitemergetree.md#graphitemergetree)
### Log {#log}
最小の機能を持つ軽量な[エンジン](../../engines/table-engines/log-family/index.md)です。小規模なテーブル最大約100万行を迅速に書き込み、その後全体を読み取りたい場合に最も効果的です。
このファミリーに含まれるエンジン:
- [TinyLog](../../engines/table-engines/log-family/tinylog.md#tinylog)
- [StripeLog](../../engines/table-engines/log-family/stripelog.md#stripelog)
- [Log](../../engines/table-engines/log-family/log.md#log)
### インテグレーションエンジン {#integration-engines}
他のデータストレージおよび処理システムと通信するためのエンジンです。
このファミリーに含まれるエンジン:
- [ODBC](../../engines/table-engines/integrations/odbc.md)
- [JDBC](../../engines/table-engines/integrations/jdbc.md)
- [MySQL](../../engines/table-engines/integrations/mysql.md)
- [MongoDB](../../engines/table-engines/integrations/mongodb.md)
- [Redis](../../engines/table-engines/integrations/redis.md)
- [HDFS](../../engines/table-engines/integrations/hdfs.md)
- [S3](../../engines/table-engines/integrations/s3.md)
- [Kafka](../../engines/table-engines/integrations/kafka.md)
- [EmbeddedRocksDB](../../engines/table-engines/integrations/embedded-rocksdb.md)
- [RabbitMQ](../../engines/table-engines/integrations/rabbitmq.md)
- [PostgreSQL](../../engines/table-engines/integrations/postgresql.md)
- [S3Queue](../../engines/table-engines/integrations/s3queue.md)
- [TimeSeries](../../engines/table-engines/integrations/time-series.md)
### 特殊エンジン {#special-engines}
このファミリーに含まれるエンジン:
- [分散テーブル](../../engines/table-engines/special/distributed.md#distributed)
- [Dictionary](../../engines/table-engines/special/dictionary.md#dictionary)
- [Merge](../../engines/table-engines/special/merge.md#merge)
- [File](../../engines/table-engines/special/file.md#file)
- [Null](../../engines/table-engines/special/null.md#null)
- [Set](../../engines/table-engines/special/set.md#set)
- [Join](../../engines/table-engines/special/join.md#join)
- [URL](../../engines/table-engines/special/url.md#table_engines-url)
- [View](../../engines/table-engines/special/view.md#table_engines-view)
- [Memory](../../engines/table-engines/special/memory.md#memory)
- [Buffer](../../engines/table-engines/special/buffer.md#buffer)
- [KeeperMap](../../engines/table-engines/special/keepermap.md)
## 仮想カラム {#table_engines-virtual_columns}
仮想カラムは、エンジンのソースコード内で定義されている統合テーブルエンジンの属性です。
`CREATE TABLE` クエリで仮想カラムを指定すべきではなく、`SHOW CREATE TABLE` や `DESCRIBE TABLE` クエリの結果に仮想カラムが表示されることはありません。仮想カラムは読み取り専用のため、仮想カラムにデータを挿入することもできません。
仮想カラムからデータを選択するには、`SELECT` クエリでその名前を指定する必要があります。`SELECT *` では仮想カラムの値は返されません。
テーブルを作成する際に、仮想カラムと同じ名前のカラムを作成した場合、仮想カラムは使用できなくなります。このようなことはお勧めしません。衝突を避けるために、仮想カラムの名前には通常アンダースコアを接頭辞として付けられています。