ポータルで Azure AI Search サービスを作成する
Azure AI Search は、カスタム アプリにフルテキスト検索エクスペリエンスを追加する際に使用される Azure リソースです。
試用版サブスクリプションを含む Azure サブスクリプションをお持ちの場合は、無料で検索サービスを作成できます。 無料サービスには制限がありますが、すべてのクイックスタートとほとんどのチュートリアルを実行できます。
検索サービスを作成する最も簡単な方法は、Azure portal を使用することです。この記事ではこれを取り上げます。 また、Azure PowerShell、Azure CLI、Management REST API、Azure Resource Manager サービス テンプレート、または Bicep ファイルを使用することもできます。
開始する前に
次のサービス プロパティは、サービスの有効期間にわたって固定されます。 これらは固定されているため、各プロパティを入力するときに使用の影響を考慮してください。
- サービス名は URL エンドポイントの一部になります (有用なサービス名については、ヒントを再確認してください)。
- レベル (Free、Basic、Standard など) によって、基になる物理ハードウェアと請求が決まります。 一部の機能はレベルに制約があります。
- サービス リージョンによって、特定のシナリオの可用性が決まる場合があります。 高可用性または AI エンリッチメントが必要な場合は、機能を提供するリージョンにリソースを作成する必要があります。
サブスクリプション (無料または有料)
無料で検索を試すには、無料の Azure アカウントを開設し、Free レベルを選択して検索サービスを作成します。 Azure サブスクリプションごとに 1 つの無料検索サービスを使用できます。 無料検索サービスは、非運用アプリケーションの製品の短期的な評価を目的としています。 運用アプリケーションでサービスを引き続き使用する場合、課金対象レベルで新しい検索サービスを作成します。
または、無料クレジットを使用して有料の Azure サービスを試すことができます。つまり、Basic 以上で検索サービスを作成し、容量を増やすことができます。 明示的に設定を変更して課金を了承しない限り、クレジット カードに課金されることはありません。 もう 1 つの方法は Visual Studio サブスクリプションで Azure クレジットをアクティブにすることです。 Visual Studio サブスクリプションにより、有料の Azure サービスで使用できるクレジットが毎月提供されます。
課金対象 Azure サブスクリプションでリソースを作成するとき、課金対象レベル (Basic 以上) を選択すると、有料 (つまり課金対象) の検索が行われます。
Azure AI Search オファリングを見つける
Azure portal にサインインします。
左上隅のプラス記号 ([+ リソースの作成]) をクリックします。
検索バーを使用して、"Azure AI Search" を探します。
サブスクリプションを選択します。
サブスクリプションが複数ある場合には、検索サービスに使用するものを選択します。 カスタマー マネージド暗号化を実装している場合、または外部データ アクセスのためにマネージド サービス ID に依存する他の機能を使用している場合は、Azure Key Vault またはマネージド ID の使用対象の他のサービスに対して使用されているものと同じサブスクリプションを選択します。
リソース グループを設定する
リソース グループは、ご使用の Azure ソリューションの関連リソースを保持するコンテナーです。 これは検索サービスに必要です。 コストを含め、リソースの管理全般にも役立ちます。 リソース グループは、1 つのサービスの場合もあれば、一緒に使用される複数のサービスから成る場合もあります。 たとえば、Azure AI Search を使用して Azure Cosmos DB データベースのインデックスを作成する場合、両方のサービスを同じリソース グループに追加して管理することができます。
リソースを単一グループに結合していない場合、または関係ないソリューションで使用されるリソースが既存のリソース グループに格納されている場合は、Azure AI Search リソース用の新しいリソース グループを作成します。
時間が経つと共に、現在のコストと予想されるコストをまとめて追跡したり、個々のリソースの料金を確認したりできるようになります。 次のスクリーンショットは、複数のリソースを 1 つのグループにまとめたときに表示されるコスト情報の種類を示しています。
ヒント
グループを削除するとその中のすべてのサービスが削除されるため、リソース グループによってクリーンアップが簡略化されます。 複数のサービスを利用するプロトタイプ プロジェクトの場合は、すべてのサービスを同じリソース グループに配置することで、プロジェクト終了後のクリーンアップが容易になります。
サービスに名前を付ける
サービスの名前は、[インスタンスの詳細] の [URL] フィールドに入力します。 この名前は、API 呼び出しの発行対象となる URL エンドポイントの一部となります (https://your-service-name.search.windows.net
)。 たとえば、エンドポイントを https://myservice.search.windows.net
とする場合は、「myservice
」と入力します。
サービス名の要件:
- search.windows.net 名前空間内で一意である
- 長さは 2 文字から 60 文字の範囲にする
- 小文字、数字、ダッシュ ("-") を使用する
- 最初の 2 文字または最後の 1 文字にダッシュ ("-") を使用しない
- 連続するダッシュ ("-") はどこにも使用しない
ヒント
複数のサービスを使用する予定がある場合、名前付け規則として、サービス名にリージョン (場所) を含めることをお勧めします。 同じリージョン内のサービスはデータを無料でやりとりすることができます。したがって、Azure AI Search とそれ以外のサービスが米国西部にある場合、mysearchservice-westus
のような名前を付けておけば、リソースの組み合わせ (関連付け) を決めるときに逐一プロパティ ページを確認する手間が省けます。
地域を選択
Azure AI Search は、「リージョン別の利用可能な製品」ページに記載されているように、ほとんどのリージョンで利用できます。
原則として、複数の Azure サービスを使用している場合は、それらすべてを同じリージョンに置くと、帯域幅の料金が最小限またはゼロになります。 すべてが同じリージョン内にある場合、サービス間のデータ交換に料金はかかりません。
2 つの注目すべき例外により、1 つ以上の検索サービスが別のリージョンにプロビジョニングされる可能性があります。
Azure AI Search から Azure Storage への送信接続。 ファイアウォールを有効にする場合は、別のリージョンにストレージを確保することをお勧めします。
事業継続とディザスター リカバリー (BCDR) の要件により、リージョン ペアに複数の検索サービスを作成することが指示されます。 たとえば、北米で活動している場合は、各検索サービスについて米国東部と米国西部や、米国中北部と米国中南部などを選択できます。
一部の機能は、リージョンの可用性の対象となります。 次の機能が必要な場合は、それらを提供するリージョンを選択します。
AI エンリッチメントを使用するには、Azure AI サービスが Azure AI Search と同じ物理リージョンに存在する必要があります。 ごくわずかですが、どちらか一方が提供されて "いない" リージョンがあります。 「リージョン別の利用可能な製品」ページでは、縦にチェック マークを 2 つ並べることで共通のリージョン プレゼンスを示しています。 どちらも利用できなければ、チェック マークは表示されません。 時計のアイコンは、将来の可用性を示します。
セマンティック ランク付けは、オプションの Premium 機能です。 特定の機能が、選択したリージョンで利用可能であるかを確認するには、「リージョン別の利用可能な製品」を参照してください。
リージョンの制約があるその他の機能:
- 可用性ゾーン
- データ プレーン操作用の Azure ロール (Azure パブリック クラウドのみ)
レベルの選択
Azure AI Search は現在、複数の価格レベル (Free、Basic、Standard、ストレージ最適化) で提供されています。 レベルごとに独自の 容量と制限があります。 また、選択したレベルが特定の機能の使用可否に影響することもあります。 ガイダンスについては、「階層による機能の使用の可否」を参照してください。
運用環境では、Basic と Standard が最も一般的な選択肢ですが、評価目的で最初は無料サービスから始めるお客様も多数います。 課金対象のレベルごとの主な違いは、パーティション サイズと速度、そして作成できるオブジェクトの数に対する制限です。
サービスの作成後には価格レベルを変更できないことに注意してください。 高いレベルまたは低いレベルが必要な場合は、サービスを作成し直す必要があります。
サービスの作成
必要な入力作業を終えたら、サービスの作成に進みます。
サービスは数分以内にデプロイされます。 Azure 通知を使用して進行状況を監視できます。 今後アクセスしやすくするために、サービスをご自分のダッシュ ボードにピン留めすることを検討してください。
認証の構成
ポータルを使用していない場合、新しいサービスにプログラムからアクセスするには、URL エンドポイントと認証接続を指定する必要があります。 次のいずれかまたは両方のオプションを使用できます。
プログラムによる接続を設定するとき、検索サービス エンドポイントが必要になります。 [概要] ページの右側から、URL エンドポイントを探してコピーします。
認証オプションを設定するには、[キー] ページを使用します。 ほとんどのクイック スタートとチュートリアルでは、わかりやすくするために API キーを使用しますが、運用ワークロード用のサービスを設定する場合、Azure ロールの使用を検討してください。 このページからキーをコピーできます。
ポータルベースのタスクにエンドポイントとキーは必要ありません。 ポータルは、ご利用の Azure AI Search リソースにあらかじめ管理者権限付きでリンクされています。 ポータルのチュートリアルについては、クイックスタート: ポータルで Azure AI Search インデックスを作成するに関するページをまず確認してください。
サービスを拡張する
検索サービスをプロビジョニングしたら、ニーズに合わせてスケーリングできます。 Standard レベルを選択している場合は、レプリカとパーティションの 2 つのディメンションでサービスをスケーリングできます。 Basic レベルでは、レプリカのみ追加できます。 無料サービスの場合、スケールは使用できません。
パーティション を使用すると、サービスでより多くのドキュメントを格納し、検索できます。
レプリカ を使用すると、より大きい検索クエリの負荷をサービスが処理できます。
リソースを追加すると、月ごとの請求が増加します。 料金計算ツールを使うと、リソース追加の課金への影響を把握できます。 負荷に基づいてリソースを調整できることに注意してください。 たとえば、リソースを増やして完全な初期インデックスを作成した後、増分インデックス作成に適したレベルまでリソースを減らすことができます。
重要
サービスでは、読み取り専用の SLA の場合は 2 つのレプリカ、読み取り/書き込み SLA の場合は 3 つのレプリカが必要です。
- Azure Portal で検索サービス ページを開きます。
- 左のナビゲーション ウィンドウで、[設定]>[スケール] を選択します。
- スライダーを使って、いずれかの種類のリソースを追加します。
2 番目のサービスの追加が必要になる状況
大半のお客様は、予想される負荷に十分なレベルでプロビジョニングされたサービスを 1 つだけ使用します。 1 つのサービスで、相互に分離された複数のインデックスをホストできます。インデックスは、選択した階層の上限の対象になります。 Azure AI Search では、要求は 1 つのインデックスにのみ転送できるため、同じサービス内の他のインデックスから偶発的または意図的にデータが取得される可能性が最小限に抑えられています。
ほとんどのお客様はサービスを 1 つしか使いませんが、運用要件に次のことが含まれる場合、サービスの冗長性が必要になる場合があります。
ビジネス継続性とディザスター リカバリー (BCDR)。 Azure AI Search では、停止時の即時フェールオーバーは提供されません。
マルチテナント アーキテクチャでは、2 つ以上のサービスが呼び出されることがあります。
グローバルにデプロイされたアプリケーションでは、待機時間を最小限に抑えるため、地理的な場所ごとに検索サービスが必要になることがあります。
Note
Azure AI Search では、インデックス作成とクエリの操作を分離することはできません。このため、ワークロードを分離するために複数のサービスを作成することはありません。 インデックスのクエリは常に、インデックスが作成されたサービスで行われます (あるサービスでインデックスを作成し、それを別のサービスにコピーすることはできません)。
高可用性のために 2 番目のサービスは必要ありません。 クエリの高可用性は、同じサービスで 2 つ以上のレプリカを使用することにより実現されます。 レプリカの更新はシーケンシャルです。つまり、サービスの更新が展開されているとき、少なくとも 1 つのレプリカが動作しています。アップタイムについて詳しくは、「サービス レベル アグリーメント」をご覧ください。
サブスクリプションにサービスを追加する
Azure AI Search では、サブスクリプションで最初に作成できるリソースの数が制限されています。 上限を超えた場合は、新しいサポート要求を提出して、検索サービスを追加してください。
Azure portal にサインインし、検索サービスを探します。
左側のナビゲーション ウィンドウで、下にスクロールし、[新しいサポート要求] を選択します。
[問題の種類] で、[サービスとサブスクリプションの制限 (クォータ)] を選択します。
さらにクォータが必要なサブスクリプションを選択します。
[クォータの種類] で [検索] を選択し、[次へ] を選択します。
[問題の詳細] セクションで、[詳細を入力] を選びます。
画面の指示に従って、制限を増やす場所とレベルを選択します。
クォータに追加する新しいサービスの数を追加します。 値を空にすることはできず、0 から 100 の範囲で指定する必要があります。 たとえば、S2 サービスの最大数は 8 です。 12 のサービスが必要な場合は、S2 サービスのうち 4 つを要求します。
終了したら、[保存して続行] を選んでサポート要求の作成を続行します。
要求を送信するために必要な追加情報を入力し、[次へ] を選択します。
[確認および作成] で、サポートに送信する詳細を確認し、[作成] を選びます。
次のステップ
サービスのプロビジョニングが完了した後、ポータル内で最初のインデックスの作成に進むことができます。
クラウドの支出を最適化して節約しますか?