AnalyticDB for MySQL は、クラスターの安定性およびセキュリティを維持するために、以下の制限を適用します。
命名に関する制限
ほとんどの命名ルールはすべてのオブジェクトタイプに適用されます。以下に記載するルールで特に指定がない限り、次のとおりです。
-
名前には英字、数字、アンダースコア (
_) を含めることができます。 -
名前には、一重引用符 (
')、二重引用符 (")、感嘆符 (!)、スペースを含めることはできません。
| オブジェクト | 制約 |
|---|---|
| データベース名 | 最大 64 文字。小文字で始まる必要があります。連続するアンダースコア (__) を含めることはできません。analyticdb(組み込みデータベース用に予約済み)は使用できません。 |
| テーブル名 | 最大 127 文字。英字またはアンダースコア (_) で始まる必要があります。SQL の予約キーワードであってはなりません。 |
| カラム名 | 最大 127 文字。英字またはアンダースコア (_) で始まる必要があります。SQL の予約キーワードであってはなりません。 |
| インデックス名 | 最大 64 文字。 |
| アカウント名 | 2~16 文字(V3.1.9.4 より前のクラスター)または 2~64 文字(V3.1.9.4 以降)。小文字で始まり、小文字または数字で終わる必要があります。小文字、数字、アンダースコア (_) を含めることができます。 |
| パスワード | 8~32 文字。大文字、小文字、数字、特殊文字 (! @ # ¥ % ^ & * ( ) _ + - =) のうち、少なくとも 3 種類を含める必要があります。 |
クォータ制限
| カテゴリ | 制限項目 | デフォルト値 | 調整可能 | 注記 |
|---|---|---|---|---|
| クラスター | Alibaba Cloud アカウントあたりの最大クラスター数 | 30 | はい | 上限を引き上げるには、チケットを起票してください。 |
| クラスター | クラスターあたり 1 日に実行可能なスケーリング操作(スケールイン、スケールアウト、スペックアップ、スペックダウン)の最大回数 | 12 | いいえ | — |
| データベース | クラスターあたりの最大データベース数 | 2,048 | いいえ | — |
| ストレージ | アラート発生前の最大ディスク使用率(Data Warehouse Edition、予約モード) | 80% | いいえ | このしきい値を超えると、システムは 1 日あたり連絡先ごとに最大 4 回のアラート通知を送信します。 |
| ストレージ | クラスターロックが発生する前の最大ディスク使用率(Data Warehouse Edition、予約モード) | 90% | いいえ | システムはクラスターをロックし、書き込みリクエストを拒否します。1 日あたり連絡先ごとに最大 4 回のアラート通知が送信されます。 |
| ストレージ | エラスティック I/O ユニット (EIU) あたりの最大ホットデータ量(Data Warehouse Edition、エラスティックモード) | 8 TB | いいえ | システムはクラスターをロックし、書き込みリクエストを拒否します。解決方法:エラスティック I/O リソースをスケールアウトします。 |
| ストレージ | 予約ストレージリソースセットあたりの最大ホットデータ量(Data Lakehouse Edition) | 8 TB | いいえ | システムはクラスターをロックし、書き込みリクエストを拒否します。解決方法:予約ストレージリソースをスケールアップします。 |
| ストレージ | 予約リソースセットあたりの最大ホットデータ量(Enterprise Edition または Basic Edition) | 8 TB | いいえ | システムはクラスターをロックし、書き込みリクエストを拒否します。解決方法:予約リソースをスケールアップします。 |
| アカウント | クラスターあたりの最大標準アカウント数 | 256 | いいえ | — |
| 接続 | クラスターあたりの最大接続数(推奨値) | 50,000 | いいえ | 実際の容量はクラスターの仕様によって異なります。低スペックのクラスターでは、高い接続数をサポートできない場合があります。 |
| ホワイトリスト | クラスターあたりの最大 IP ホワイトリスト数 | 50 | いいえ | — |
| ホワイトリスト | ホワイトリストあたりの最大 IP アドレス数 | 1,000 | いいえ | — |
| ホワイトリスト | クラスターあたりの全ホワイトリストに登録可能な最大 IP アドレス数 | 25,000 | いいえ | — |
| テーブル | クラスターあたりの最大パーティション数 | 102,400 | いいえ | すべてのテーブルの合計に適用されます。上限を超えると、パーティションテーブルを作成できなくなります。現在の使用状況を確認するには、以下のクエリを実行します。 |
| テーブル | 内部テーブルの最大数(Enterprise Edition または Basic Edition) | 80000 / ⌈シャード数 / 予約リソースセット数⌉ |
はい | 上限を引き上げる方法:予約リソースをスケールアップ(Enterprise Edition)。Basic Edition では、この制限を引き上げることはできません。 |
| テーブル | 内部テーブルの最大数(Data Lakehouse Edition または Data Warehouse Edition、エラスティックモード) | [80000 / ⌈シャード数 / EIU 数⌉] × 2 |
はい | 予約済みストレージリソースのスケールアップ上限を引き上げる方法:(Data Lakehouse Edition);EIU 数を増加(Data Warehouse Edition、エラスティックモード)。 |
| テーブル | 内部テーブルの最大数(Data Warehouse Edition、予約モード、ノードグループ数 1~20) | 80000 / ⌈シャード数 / ノードグループ数⌉ |
はい | 上限を引き上げる方法:ノードグループを追加します。 |
| テーブル | クラスターあたりの最大外部テーブル数 | 500,000 | いいえ | — |
| テーブル | テーブルあたりの最大カラム数 | 4,096 | いいえ | — |
| テーブル | テーブルあたりの最大コメント長 | 1,024 文字 | いいえ | — |
| テーブル | カラムのデフォルト長 | 127 文字 | — | — |
| カラム | カラムあたりの最大コメント長 | 1,024 文字 | いいえ | — |
| 列 | カラムあたりの最大フィールド長 | 16 MB | いいえ | — |
| 行 | 行の最大書き込みサイズ | 16 MB | いいえ | — |
| パーティション | シャードあたりのパーティションごとの最大データエントリ数 | 21 億 | いいえ | — |
| クエリ | クエリあたりの最大カラム数 | 1,024 | いいえ | 調整方法: このパラメーターを増やすと、クラスターの安定性に影響を与える可能性があります。お客様ご自身での調整は推奨しません。 |
| クエリ | WHERE 句あたりの最大項目数 | 256 | いいえ | — |
| クエリ | IN 演算子あたりの最大条件数 | 2,000 | はい | 上限を引き上げるには、SET adb_config MAX_IN_ITEMS_COUNT=3000; を実行します。値を大きくするとクエリの複雑さが増し、パフォーマンスに影響を与える可能性があります。 |
内部テーブルの制限に関する計算式の注記:
-
Enterprise Edition:予約リソースセット数 = 予約リソースノード数 / 3
-
Basic Edition:予約リソースセット数 = 予約リソースノード数
-
Data Lakehouse Edition:EIU 数 = 予約ストレージリソース数 / 24 ACU(AnalyticDB Capacity Units)
-
Data Warehouse Edition(エラスティックモード):EIU 数 = エラスティック I/O リソースセット数
すべてのテーブルにわたるパーティション総数を確認するには、以下のコマンドを実行します。
SELECT SUM(partition_count) FROM INFORMATION_SCHEMA.KEPLER_META_TABLES
WHERE table_engine_name IN ('CSTORE', 'XUANWU', 'XUANWU_V2');
タイムアウト制限
| 操作 | タイムアウト (ミリ秒) |
|---|---|
| クラスターの作成 | 600,000 |
| クラスターの削除 | 300,000 |
| クラスターのスケールアップ | 600,000 |
| データベースの作成 | 10,000 |
| データベースの削除 | 10,000 |
| テーブルまたはビューの作成 | 10,000 |
| テーブルまたはビューの削除 | 10,000 |
| テーブルの切り捨て | 60,000 |
| カラムの追加 | 10,000 |
| カラムの削除 | 60,000 |
| カラムの更新 | 60,000 |
| 単一クエリの実行 | 1,800,000 |
| データの挿入 | 300,000 |
| INSERT SELECT FROM、INSERT UPDATE FROM、INSERT DELETE FROM | 86,400,000 |
クエリのタイムアウト: クエリがタイムアウト時間を超過すると、システムはそのクエリを終了します。QUERY_TIMEOUT パラメーターまたは query_timeout ヒントワードを使用して、タイムアウトを設定できます。
システムは 1,000 ミリ秒ごとにクエリのタイムアウトをチェックします。query_timeout は 1,000 ミリ秒より大きい値に設定してください。そうでないと、ヒントワードが有効にならない可能性があります。
INSERT のタイムアウト: INSERT 文がタイムアウト時間を超過すると、システムはその文を終了します。INSERT_SELECT_TIMEOUT パラメーターまたは insert_select_timeout ヒントワードを使用して、タイムアウトを設定できます。
よくある質問
クラスターのシャード数はテーブルごとに適用されますか?
はい。クラスターに 32 シャードがある場合、そのクラスター内の各テーブルは 32 シャードを持ちます。
ご利用のクラスターのシャード数を確認する方法を教えてください。
以下のステートメントを実行します。
SELECT count(1) FROM information_schema.kepler_meta_shards;
シャード数はクラスター作成時に設定されます。シャード数を変更できるのは Data Warehouse Edition のクラスターのみです。Enterprise Edition、Basic Edition、Data Lakehouse Edition のクラスターでは変更できません。
以下の表は、クラスターの仕様とシャード数の対応関係を示しています。
Enterprise Edition、Basic Edition、Data Lakehouse Edition、および Data Warehouse Edition(エラスティックモード)
| リソースの予約枠または EIU のセット | シャード |
|---|---|
| 0~1 | 64 |
| 2~3 | 64 |
| 4~7 | 96 |
| 8~15 | 256 |
| 16~31 | 384 |
| 32~63 | 512 |
| ≥64 | 1,024 |
注記:
-
Enterprise Edition:予約リソースセット数 = 予約リソースノード数 / 3
-
Basic Edition:予約リソースセット数 = 予約リソースノード数
-
Data Lakehouse Edition:EIU 数 = 予約ストレージリソース数 / 24 ACU
Data Warehouse Edition(予約モード)
| ノードグループ | シャード |
|---|---|
| 1 | 16 |
| 2~3 | 64 |
| 4~7 | 96 |
| 8~15 | 236 |
| 16~31 | 384 |
| 32~63 | 512 |
| >64 | 1,024 |