MySQL 8.0 リファレンスマニュアル


MySQL 8.0 リファレンスマニュアル  /  ...  /  NDB Cluster 内のデータベースオブジェクトに関連付けられる制限

23.1.7.5 NDB Cluster 内のデータベースオブジェクトに関連付けられる制限

NDBCLUSTER ストレージエンジンを使用するときは、テーブルやインデックスなどの一部のデータベースオブジェクトに関してさまざまな制限があります。

  • データベースオブジェクトの数.  単一の NDB Cluster (データベース、テーブル、およびインデックスを含む) 内の all NDB データベースオブジェクトの最大数は 20320 に制限されます。

  • テーブルあたりの属性数.  特定のテーブルに属すことができる属性 (つまり、カラムとインデックス) の最大数は 512 です。

  • キーあたりの属性数.  キーあたりの属性の最大数は 32 です。

  • 行サイズ.  NDB 8.0.18 以降、いずれかの行の最大許容サイズは 30000 バイトで、NDB 8.0.17 以前のリリースでは、この制限は 14000 バイトです。

    BLOB または TEXT の各カラムは、この合計に 256 バイトを超える 8 = 264 バイトを占めます。これには JSON カラムが含まれます。 これらのタイプの詳細は、文字列型の格納要件 および JSON 記憶域の要件 を参照してください。

    また、NDB テーブルの固定幅カラムの最大オフセットは 8188 バイトです。この制限に違反するテーブルを作成しようとすると、NDB エラー 851 「固定サイズカラムの最大オフセットを超えました」で失敗します。 メモリーベースのカラムの場合、VARCHAR などの可変幅のカラムタイプを使用するか、カラムを COLUMN_FORMAT=DYNAMIC として定義することで、この制限を回避できます。これは、ディスクに格納されているカラムでは機能しません。 ディスクベースのカラムの場合、テーブルの作成に使用された CREATE TABLE ステートメントで最後に定義されたディスクベースのカラム以外のすべてのカラムの幅の組合せが 8188 バイトを超えず、CHARVARCHAR などの一部のデータ型に対して実行される可能性のある丸めを減らすように、テーブルディスクベースのカラムの順序を変更できます。そうでない場合は、問題のあるカラムの 1 つ以上にメモリーベースの記憶域を使用する必要があります。

  • テーブルごとの BIT カラムの記憶域.  特定の NDB テーブルで使用されるすべての BIT カラムの最大合計幅は 4096 です。

  • FIXED カラムの格納.  NDB Cluster 8.0 は、FIXED カラム内のデータのフラグメントあたり最大 128 TB をサポートします。


関連キーワード:  NDB, テーブル, ndbinfo, ndb, カラム, ノード, 構成, データ, 管理, 制限