パラメータにENGINEセクションを渡すことによってプライマリキーが作成されるドキュメントの例はほとんど見つかりませんでした。 しかし、ENGINEへの引数についての説明、その意味、および主キーの作成方法は見つかりませんでした。 ありがとうございます。この情報をドキュメントに追加するのは素晴らしいことです。ClickHouseでプライマリキーを作成する方法
4
A
答えて
5
主キーは、MergeTreeストレージエンジンファミリでサポートされています。 https://clickhouse.yandex/reference_en.html#MergeTree
最も深刻なタスクのために、あなたは MergeTree家族からエンジンを使用する必要があることに注意してください。
これは、ストレージエンジンのパラメータとして指定されています。
エンジンパラメータを受け入れる:日付を含む日付型の列の名前、サンプリング式(オプション)、テーブルの主キーを定義するタプル、およびインデックス粒度。
サポートをサンプリングなし例:
MergeTree(EventDate, (CounterID, EventDate), 8192)
サンプリングをサポートしている例:
MergeTree(EventDate, intHash32(UserID), (CounterID, EventDate, intHash32(UserID)), 8192)
ので、(CounterID, EventDate)
または(CounterID, EventDate, intHash32(UserID))
は、これらの例では主キーです。
ReplicatedMergeTreeを使用する場合、シャードとレプリカを識別する2つの追加パラメータもあります。
https://clickhouse.yandex/reference_en.html#Creating%20replicated%20tables
主キーは、テーブルの作成時に指定され、後で変更することができませんでした。
名前にもかかわらず、主キーは一意ではありません。これは、レンジクエリを最適な方法で処理するためのデータのソート順を定義するだけです。主キーの同じ値を持つ多くの行を表に挿入できます。
関連する問題
- 1. ClickHouseでプロセス(クエリ)を殺す方法
- 2. プライマリキーをシリアルに作成する方法は?
- 3. Grails:プライマリキーとして外部キーを作成する方法
- 4. C#既存のテーブルの列にプライマリキーを作成する方法
- 5. apache cassandraでプライマリキー(自動生成シーケンス)を生成する方法
- 6. SQLAlchemyでプライマリキーではないID列を作成する方法は?
- 7. プライマリキーとSQLで自動インクリメントを使用してデータベースを作成する方法
- 8. 作成時にプライマリキーの値で別の列を設定する方法
- 9. ClickhouseでSQLのようなシーケンスを作成
- 10. DB2(SQL最適化)でプライマリキーを生成する方法
- 11. スルーアソシエーションでプライマリキーを指定する方法
- 12. Clickhouseを新しいusers.xmlファイルにする方法は?
- 13. ClickHouse、挿入時に値を変更する方法
- 14. ClickHouse jdbc接続のセッションタイムゾーンを設定する方法は?
- 15. プライマリキーを定義しないでSQLデータベースを作成する
- 16. SQLite Androidで複数のプライマリキーを持つテーブルを作成する
- 17. ClickHouse JDBC
- 18. Clickhouseデータインポート
- 19. "3585c5d240dd4132bab35ab969137f3f"のようにSQLでプライマリキーを作成する文は
- 20. SQLiteでプライマリキーを設定または作成するR
- 21. 新しいプライマリキーを生成するテーブルの代わりに、現在のプライマリキーを更新する方法。Asp.net mvc
- 22. プライマリキーを挿入する方法
- 23. EF6にプライマリキーとID列の両方を持つエンティティを作成
- 24. Clickhouseでデータを更新する
- 25. ClickHouseでユーザーアクセス権を制限する
- 26. Clickhouseにセンサーデータを保存する最良の方法は何ですか?
- 27. プライマリキーではなく、別のフィールドに関連するシーケンスフィールドをGrailsに作成する方法は?
- 28. プライマリキーを定義するRedshiftのテーブルを作成します
- 29. Clickhouse JDBCドライバクラス名
- 30. DynamoDB - エンドポイントクラスを作成するためにデータベースからプライマリキー(ランダムID)を取得する方法は?
ありがとうございました –