Skip to content

元ドキュメント: 使用規範・推奨事項

利用上の推奨事項

テーブル作成規範

テーブルタイプの選択

テーブル作成前にテーブルタイプを確定する必要があります。3種類のタイプは相互変換できません(単一テーブル→パーティションテーブルを除く):

テーブルタイプ適用シナリオ特徴
通常テーブル(単一テーブル)データ量が少なく分散不要すべてのデータが1つの RG に配置
パーティションテーブル大容量データ、水平スケーリングが必要ルールに従いデータを複数の RG に分散
同期テーブルシステム設定、ディメンションテーブル、読み取り多/書き込み少全ノードに強同期レプリカ

主キー規範

  • 主キーを必ず明示的に定義してください。主キーがない場合、書き込みホットスポットが発生します
  • 単調増加する主キー(純粋な AUTO_INCREMENT INT など)は避けてください。同様に書き込みホットスポットの原因になります。複合主キーやランダム性のあるプレフィックスの使用を推奨
  • AUTO_INCREMENT 列は独立した主キーまたはユニークインデックスとして定義する必要があります。そうしないと値が重複する可能性があります
  • パーティションテーブル:主キーとすべてのユニークインデックスにはパーティションキーを含める必要があります

テーブル構造設計規範

  • 単一テーブルの列数は60以下を推奨(上限: 4096列)
  • 単一行のデータは64KB以下を推奨(上限: デフォルト64MB、最大512MBに調整可)
  • テーブル名は32文字以内を推奨(上限: 64文字)
  • ストレージエンジンは統一して RocksDB。テーブル作成時にどのエンジンを指定しても無視されます

数量制限

項目制限
単一テーブル最大列数4096
単一テーブル最大インデックス数64
単一テーブル最大パーティション数8192
インデックス最大バイト数3072バイト
インデックス最大列数16列/インデックス
単一行最大長デフォルト64MB、最大512MB
最大テーブル作成数ノードスペックに依存(1万〜8万)

パーティションテーブル規範

パーティション戦略の選択

戦略適用シナリオキータイプ
HASH均一分散、整数キー整数型
KEY均一分散、文字列キー任意の型
RANGE時間範囲、ID 区間クエリ整数/日付
LIST列挙値分類(地域など)整数

パーティションキー規範

  • 主キーとすべてのユニークインデックスにパーティションキーを含める必要があります(違反するとテーブル作成が失敗します)
  • クエリの WHERE 句にはパーティションキーを含める必要があります。そうしないと全パーティションスキャンが発生します
  • UPDATE でパーティションキーの値を変更しないでください。クロスパーティションのデータ移行が発生し、パフォーマンスが低下します

同期テーブル規範

定義と適用シナリオ

同期テーブルは書き込み時にすべての有効な Follower レプリカに強同期してからレスポンスを返します。

適用シナリオ:

  • グローバルシステム設定テーブル、パラメータテーブル
  • データウェアハウスのディメンションテーブル(商品カテゴリ、地域辞書など)
  • TPC-C の item テーブルなど、読み取り多/書き込み少の小テーブル

非推奨シナリオ:

  • 高頻度書き込みテーブル(レプリカ数が多いほど書き込みパフォーマンスが低下)
  • 大容量データテーブル

Tencent Cloud プロダクトドキュメント