Azure Cognitive Search におけるサービスの制限

インデックスやその他のオブジェクトのストレージ、ワークロード、および数量の上限は、Azure Cognitive SearchFreeBasicStandardストレージ最適化のどの価格レベルでプロビジョニングするかによって異なります。

  • Free は、Azure サブスクリプションに付属しているマルチテナント共有サービスです。

  • Basic では、小規模な運用ワークロードに対して専用のコンピューティング リソースが提供されますが、一部のネットワーク インフラストラクチャは他のテナントと共有されます。

  • Standard は、すべてのレベルでさらに多くのストレージや処理能力を持つ専用マシン上で実行されます。 Standard には 4 つのレベル(S1、S2、S3、S3 HD) があります。 S3 高密度 (S3 HD) は、マルチテナントと大量の小さなインデックス (サービスあたり 3,000 インデックス) 向けに設計されています。 S3 HD は、インデクサー機能を提供しません。また、データ インジェストでは、ソースからインデックスにデータをプッシュする API を活用する必要があります。

  • ストレージ最適化は、Standard よりも多くの合計ストレージ、ストレージ帯域幅、およびメモリを備えた専用マシンで実行されます。 このレベルでは、大型で、緩やかに変化するインデックスが対象となります。 ストレージ最適化は 2 つのレベルがあります: L1 と L2 です。

サブスクリプションの制限

複数のサービスを作成でき、各レベルで許可されるサービスの数によってのみ制限されます。 たとえば、Basic レベルのサービスであれば 16 個まで作成できますが、同じサブスクリプションの枠内で S1 レベルのサービスをさらにもう 16 個まで作成できます。 レベルの詳細については、Azure Cognitive Search 用の SKU または価格レベルの選択に関するページを参照してください。

サービス数の上限は、依頼により引き上げが可能です。 同一のサブスクリプション内にさらに多くのサービスが必要な場合は、サポート リクエストを提出してください

リソース Free1 Basic S1 S2 S3 S3 HD L1 L2
最大サービス数 1 16 16 8 6 6 6 6
検索単位の最大スケール (SU)2 該当なし 3 SU 36 SU 36 SU 36 SU 36 SU 36 SU 36 SU

1 Free は、他の顧客と共有されているインフラストラクチャに基づいて作成されます。 ハードウェアは専用ではないので、Free レベルではスケールアップはサポートされていません。

2 Search ユニットは、レプリカまたはパーティションのいずれかとして割り当てられている請求単位です。 ストレージ、インデックス作成、およびクエリ操作については、両方のリソースが必要になります。 SU の計算の詳細については、クエリとインデックス作成のワークロードに応じたリソース レベルのスケーリングに関するページを参照してください。

ストレージの制限

検索サービスは、ディスク領域と、インデックスまたはインデクサーの最大数のハード制限のうち、先に達したものによって制約されます。 次の表では、ストレージの制限についてまとめています。 オブジェクトの上限については、リソース別の制限に関するセクションを参照してください。

リソース Free Basic1 S1 S2 S3 S3 HD L1 L2
サービス レベル アグリーメント (SLA)2 いいえ はい はい はい はい はい はい はい
パーティションあたりのストレージ容量 50 MB 2 GB 25 GB 100 GB 200 GB 200 GB 1 TB (テラバイト) 2 TB
サービスあたりのパーティション数 該当なし 1 12 12 12 3 12 12
パーティション サイズ 該当なし 2 GB 25 GB 100 GB 200 GB 200 GB 1 TB (テラバイト) 2 TB
レプリカ 該当なし 3 12 12 12 12 12 12

1 Basic には、1 つの固定パーティションがあります。 追加の検索ユニットを使用することで、レプリカを追加してより多くのクエリを実行できます。

2 専用リソースの課金対象のサービスでは、サービス レベル アグリーメントが有効です。 Free サービスおよびプレビュー機能には SLA がありません。 課金対象のサービスで、SLA が有効になるのは、サービスに対して十分な冗長性がプロビジョニングされている場合です。 クエリ (読み取り) の SLA には複数のレプリカが必要です。 クエリとインデックス作成 (読み取り/書き込み) の SLA には 3 つ以上のレプリカが必要です。 パーティション数は SLA には関係ありません。

インデックスの制限

リソース Free 基本 1 S1 S2 S3 S3 HD L1 L2
最大インデックス 3 5 または 15 50 200 200 パーティションあたり 1,000、またはサービスあたり 3,000 10 10
インデックスあたりの単純型フィールドの最大数 2 1000 100 1000 1000 1000 1000 1000 1000
インデックスあたりの複合コレクション フィールドの最大数 40 40 40 40 40 40 40 40
ドキュメントあたりの複合コレクション全体での最大要素数 3 3000 3000 3000 3000 3000 3000 3000 3000
複合フィールドの最大深度 10 10 10 10 10 10 10 10
インデックスあたりの最大サジェスター 1 1 1 1 1 1 1 1
インデックスあたりの最大スコアリング プロファイル 100 100 100 100 100 100 100 100
プロファイルあたりの最大関数 8 8 8 8 8 8 8 8

1 2017 年 12 月より前に作成された Basic サービスは、インデックスでの制限が低くなっています (15 ではなく 5)。 Basic レベルにのみ下限 (インデックスあたり 100 フィールド) があります。

2 フィールドの上限には、複合コレクション内の第 1 レベルのフィールドと入れ子になったサブフィールドの両方が含まれます。 たとえば、インデックスに 15 個のフィールドが含まれており、それぞれ 5 つのサブフィールドを持つ 2 つの複合コレクションがある場合、インデックスのフィールド数は 25 になります。 フィールド コレクションが非常に大きい場合、インデックスの処理速度が低下する場合があります。 フィールドと属性を必要なものだけに制限し、インデックス作成とクエリ テストを実行して、パフォーマンスが許容できることを確認します。

3 多数の要素があると、インデックスに必要なストレージは大幅に増えるため、要素には上限があります。 複合コレクションの要素は、そのコレクションのメンバーとして定義されます。 たとえば、部屋の複合コレクションが記載されているホテル ドキュメントがあるとします。部屋コレクション内の各部屋は、1 つの要素として見なされます。 インデックス作成時は、インデックス作成エンジンによって、ドキュメント全体で最大 3,000 の要素が安全に処理されます。 この制限 で導入され、文字列コレクションや複合フィールドではなく、複合コレクションにのみ適用されます。

サービスがより強力なクラスターでプロビジョニングされている場合は、上限に多少の違いがあることがあります。 ここでの制限は、共通の分母を表します。 上記の仕様に基づいて構築されたインデックスは、任意のリージョンの同等のサービス レベル間で移植できます。

ドキュメントの制限

Azure Cognitive Search では、サービスごとのドキュメント制限はなくなりましたが、Basic、S1、S2、S3、L1、L2 の各検索サービスのインデックスあたり約 240 億ドキュメントの制限があります。 S3 HD の場合、制限は、インデックスあたり 20 億ドキュメントです。 制限に関しては、複合コレクションの各要素は個別のドキュメントとしてカウントされます。

API 呼び出しごとのドキュメント サイズの制限

インデックス API を呼び出すときのドキュメント サイズの上限は約 16 メガバイトです。

ドキュメント サイズとは、実際にはインデックス API の要求本文のサイズに対する制限を意味します。 複数のドキュメントのバッチを一度にインデックス API に渡すことができるため、このサイズの制限は、現実的には、バッチ内のドキュメント数に左右されます。 バッチ内のドキュメントが 1 つの場合、最大ドキュメント サイズは JSON 形式で 16 MB です。

ドキュメント サイズを推定する場合は、検索サービスで使用できるフィールドのみを考慮してください。 ソース ドキュメント内のバイナリ データまたはイメージ データはすべて、計算から除外する必要があります。

インデクサー制限

サービスに全体としてのバランスと安定性を提供するために、最大実行時間が設けられていますが、より大規模なデータ セットでは、許可されている最大値よりも長いインデックス作成時間が必要になることがあります。 インデックス作成ジョブが最大許容時間内で完了できない場合は、スケジュールで実行してください。 スケジューラはインデックスの状態を追跡します。 スケジュールされたインデックス作成ジョブが何らかの理由で中断された場合、インデクサーは、次のスケジュールされた実行時に最後の終了状態を選択できます。

リソース 空き 1 基本 2 S1 S2 S3 S3 HD 3 L1 L2
最大インデクサー 3 5 または 15 50 200 200 該当なし 10 10
最大データソース 3 5 または 15 50 200 200 該当なし 10 10
最大スキルセット 4 3 5 または 15 50 200 200 該当なし 10 10
呼び出しあたりの最大インデックス作成負荷 10,000 ドキュメント 最大ドキュメントによってのみ制限 最大ドキュメントによってのみ制限 最大ドキュメントによってのみ制限 最大ドキュメントによってのみ制限 該当なし 制限なし 制限なし
最小限のスケジュール 5 分 5 分 5 分 5 分 5 分 5 分 5 分 5 分
最大実行時間 6 1 ~ 3 分 2 または 24 時間 2 または 24 時間 2 または 24 時間 2 または 24 時間 該当なし 2 または 24 時間 2 または 24 時間
スキルセット 5 のインデクサー最大実行時間 3 から 10 分 2 時間 2 時間 2 時間 2 時間 該当なし 2 時間 2 時間
BLOB インデクサー: BLOB の最大サイズ、MB 16 16 128 256 256 該当なし 256 256
BLOB インデクサー: BLOB から抽出されたコンテンツの最大文字数 32,000 64,000 400 万 800 万 1600 万 該当なし 400 万 400 万

1 Free サービスのインデクサーの最大実行時間は、BLOB ソースの場合は 3 分、その他のすべてのデータ ソースの場合は 1 分です。 インデクサー呼び出しは 180 秒に 1 回です。 Cognitive Services に呼び出しを行う AI インデックスについては、トランザクションが強化パイプラインを正常に通過するドキュメントとして定義された場合、無料のサービスは 1 日あたりインデクサーごとに 20 件の無料トランザクションに制限されます (ヒント:インデクサーをリセットしてカウントをリセットできます)。

2 2017 年 12 月より前に作成された Basic サービスは、インデクサー、データ ソース、およびスキルセットでの制限が低くなっています (15 ではなく 5)。

3 S3 HD サービスには、インデクサー サポートが含まれません。

4 スキルセットあたり最大 30 スキル。

5 AI エンリッチメントと画像分析は、コンピューティングを集中的に使用し、使用可能な処理能力を大量に消費します。 キュー内の他のジョブにも、より多くの実行の機会が与えられるように、これらのワークロードの実行時間は短縮されました。

6 Basic レベル以上のインデクサーの最大実行時間は、システム リソース、製品の実装、その他の要因によって 2 または 24 時間になります。

Note

インデックスの制限」で説明したように、複合型をサポートする最新の GA API バージョン () 以降では、ドキュメントごとのすべての複合コレクションに対する 3,000 要素の上限も、インデクサーによって適用されます。 つまり、以前のバージョンの API を使用してインデクサーを作成した場合、この制限の対象にはなりません。 最大の互換性を維持するために、以前のバージョンの API で作成され、API バージョン 2019-05-06 以降で更新されたインデクサーは、引き続き制限から2019-05-06されます。 前述のように、非常に大きな複合コレクションがあると、悪影響が生じることに注意する必要があります。最新の GA API バージョンを使用して、新しいインデクサーを作成することを強くお勧めします。

インデクサーでは、共有プライベート リンク リソース API を使用して管理されているプライベート エンドポイント経由で他の Azure リソースにアクセスできます。 このセクションでは、この機能に関連する制限について説明します。

リソース Free Basic S1 S2 S3 S3 HD L1 L2
プライベート エンドポイント インデクサーのサポート いいえ はい はい はい はい いいえ はい はい
スキルセットがあるインデクサーのプライベート エンドポイントのサポート1 いいえ いいえ いいえ はい はい いいえ はい はい
最大プライベート エンドポイント N/A 10 または 30 100 400 400 N/A 20 20
個別のリソースの種類の最大数2 該当なし 4 7 15 15 該当なし 4 4

1 AI エンリッチメントと画像分析は、コンピューティングを集中的に使用し、使用可能な処理能力を大量に消費します。 このため、検索サービス自体のパフォーマンスと安定性に悪影響を及ぼさないように、下位層でプライベート接続は無効になっています。

2 個別のリソースの種類の数は、リソースの状態に関係なく、特定の検索サービスのすべての共有プライベート リンク リソースで使用される一意の 値の数として計算されます。

シノニムの制限

シノニム マップの最大数は、レベルによって異なります。 各規則には最大 20 の拡張を含めることができます。ここで、拡張は同義語です。 たとえば、"cat" の場合、"kitty"、"feline"、および "felis" (ネコ属) との関連は、3 つの拡張としてカウントされます。

リソース Free Basic S1 S2 S3 S3-HD L1 L2
シノニムマップの最大数 3 3 5 10 20 20 10 10
マップごとの規則の最大数 5000 20000 20000 20000 20000 20000 20000 20000

インデックスの別名の上限

インデックスの別名の最大数は、レベルによって異なります。 いずれのレベルも、別名の最大数はインデックスの最大数と同じです。

リソース Free Basic S1 S2 S3 S3-HD L1 L2
最大別名 3 5 または 15 50 200 200 パーティションあたり 1,000、またはサービスあたり 3,000 10 10

データの制限 (AI エンリッチメント)

エンティティ認識エンティティ リンク設定キー フレーズの抽出センチメント分析言語選択、および個人情報検出の Azure Cognitive Services リソースに対して呼び出しを行う AI エンリッチメント パイプラインは、データの制限を受ける可能性があります。 レコードの最大サイズは、String.Length によって測定されるため、50,000 文字にする必要があります。 データをセンチメント アナライザーに送信する前に分割する必要がある場合は、テキスト分割スキルを使用します。

スロットルの制限

システムがピーク時の容量に近づくにつれて、API 要求が調整されます。 スロットルの動作は API によって異なります。 クエリ API (検索/提案/オートコンプリート) とインデックス作成 API は、サービスの負荷に基づいて動的に調整されます。 インデックス API とサービス操作 API には、静的な要求レート制限があります。

インデックスに関連する操作の静的なレート要求の制限:

  • インデックスの一覧取得 (GET /indexes):1 秒あたり 3 件 (検索単位あたり)
  • インデックスの取得 (GET /indexes/myindex):1 秒あたり 10 件 (検索単位あたり)
  • インデックスの作成 (POST /indexes):1 分あたり 12 件 (検索単位あたり)
  • インデックスの作成または更新 (PUT /indexes/myindex):1 秒あたり 6 件 (検索単位あたり)
  • インデックスの削除 (DELETE /indexes/myindex):1 分あたり 12 件 (検索単位あたり)

サービスに関連する操作の静的なレート要求の制限:

  • サービス統計情報 (GET /servicestats):1 秒あたり 4 件 (検索単位あたり)

API 要求の制限

  • 要求あたりの最大値: 16 MB1
  • URL の最大長: 8 KB
  • インデックスののアップロード、マージ、または削除のバッチあたりの最大ドキュメント数: 1,000
  • $orderby 句の最大フィールド数: 32
  • 検索句の最大文字数: 100,000 文字
  • search 内の句の最大数 (AND または OR で 区切られた式): 1,024 個
  • 検索用語の最大サイズ: UTF-8 でエンコードされたテキストの 32,766 バイト (32 KB - 2 バイト)
  • プレフィックス検索および正規表現検索での検索用語の最大サイズ: 1,000 文字
  • Lucene によって処理される場合、ワイルドカード検索正規表現検索で制御される状態の最大数: 1,000

1 Azure Cognitive Search では、要求の本文は上限 16 MB に左右され、それ以外では理論的制限によって制約されない個々のフィールドまたはコレクションのコンテンツに実際的な制限が課せられます (フィールドの構成と制約の詳細については、サポートされているデータ型に関するページをご覧ください)。

無制限のクエリにより検索サービスが不安定になる恐れがあるため、クエリのサイズと構成に制限が適用されます。 通常、このようなクエリはプログラムによって生成されます。 アプリケーションがプログラムで検索クエリを生成する場合は、無制限のサイズのクエリが生成されないように設計することをお勧めします。

API 応答の制限

  • 検索結果のページごとに返される最大ドキュメント数: 1,000
  • 検索候補 API 要求ごとに返される最大検索候補数: 100

API キーの制限

API キーは、サービスの認証に使用されます。 次の 2 つの種類があります。 管理者キーは、要求ヘッダーで指定され、サービスに完全な読み取り/書き込みアクセス権を付与します。 クエリ キーは、読み取り専用で、URL で指定され、通常はクライアント アプリケーションに配布されます。

  • サービスあたりの最大管理キー数: 2
  • サービスあたりの最大クエリ キー数: 50