SHARD_ROW_ID_BITS

このドキュメントでは、暗黙の_tidb_rowidがシャードされた後にシャードのビット数を設定するために使用されるSHARD_ROW_ID_BITSテーブル属性を紹介します。

概念

整数でない主キーまたは主キーがないテーブルの場合、TiDB は暗黙的な自動インクリメント行 ID を使用します。多数のINSERT操作が実行されると、データは単一のリージョンに書き込まれ、書き込みホット スポットが発生します。

ホット スポットの問題を軽減するために、 SHARD_ROW_ID_BITSを構成できます。行 ID は分散しており、データは複数の異なるリージョンに書き込まれます。

  • SHARD_ROW_ID_BITS = 4は 16 個のシャードを示します
  • SHARD_ROW_ID_BITS = 6は 64 個のシャードを示します
  • SHARD_ROW_ID_BITS = 0はデフォルトの 1 シャードを示します

  • CREATE TABLE : CREATE TABLE t (c int) SHARD_ROW_ID_BITS = 4;
  • ALTER TABLE : ALTER TABLE t SHARD_ROW_ID_BITS = 4;