インデクサーの作成 (Azure AI Search REST API)
インデクサーは、Azure Storage、Azure SQL Database、Azure Cosmos DB などのサポートされている Azure データ ソースからのインデックス作成を自動化して、いくつかの名前を付けます。 インデクサーは、定義済みの データ ソース と インデックス を使用して、ソース データを抽出してシリアル化し、データ インジェストのために検索サービスに渡すインデックス作成パイプラインを確立します。 画像と非構造化テキストの AI エンリッチメントの場合、インデクサーは AI 処理を定義する スキルセット を受け入れることもできます。
インデクサーを作成すると、検索サービスに追加されて実行されます。 要求が成功すると、インデックスにデータ ソースからの検索可能なコンテンツが設定されます。
要求に対して POST または PUT を使用できます。 いずれの場合も、要求本文の JSON ドキュメントによってオブジェクト定義が提供されます。
POST https://[service name].search.windows.net/indexers?api-version=[api-version]
Content-Type: application/json
api-key: [admin key]
または、PUT を使用して、URI にインデクサー名を指定することもできます。
PUT https://[service name].search.windows.net/indexers/[indexer name]?api-version=[api-version]
Content-Type: application/json
api-key: [admin key]
HTTPS はすべてのサービス要求に必要です。 インデクサーが存在しない場合は、作成されます。 既に存在する場合は、新しい定義に更新されますが、インデクサーの実行が必要な場合 は、インデクサーの実行 要求を発行する必要があります。
インデクサーの構成は、データ ソースの種類によって異なります。 インデクサーの作成に関するデータ プラットフォーム固有のガイダンスについては、「インデクサーの概要」から始めてください。そこに、関連記事の完全な一覧が記載されています。
URI パラメーター
パラメーター | 説明 |
---|---|
サービス名 | 必須。 これを検索サービスの一意のユーザー定義名に設定します。 |
インデクサー名 | PUT を使用する場合は、URI で必須です。 名前は小文字で、文字または数字で始まり、スラッシュやドットがなく、128 文字未満である必要があります。 名前は文字または数字で始まる必要がありますが、ダッシュが連続していない限り、名前の残りの部分には任意の文字、数字、ダッシュを含めることができます。 |
api-version | 必須。 サポートされている バージョンの 一覧については、「API のバージョン」を参照してください。 |
要求ヘッダー
次の表では、必須と省略可能の要求ヘッダーについて説明します。
フィールド | 説明 |
---|---|
Content-Type | 必須。 これを application/json |
api-key |
Azure ロールを使用していて、要求にベアラー トークンが指定されている場合は省略可能。それ以外の場合はキーが必要です。 要求の作成には、(クエリ キーではなく) 管理キーに設定されたヘッダーを含める api-key 必要があります。 詳細については、「 キー認証を使用して Azure AI Search に接続 する」を参照してください。 |
要求本文
データ ソース、インデックス、スキルセットはインデクサーの定義の一部ですが、それぞれが独立したコンポーネントであり、さまざまな組み合わせで使用できます。 たとえば、複数のインデクサーで同じデータ ソースを使用したり、複数のインデクサーで同じインデックスを使用したり、単一のインデックスに書き込む複数のインデクサーを使用したりできます。
次の JSON は、定義のメイン部分の大まかな表現です。
{
"name" : (optional on PUT; required on POST) "Name of the indexer",
"description" : (optional) "Anything you want, or nothing at all",
"dataSourceName" : (required) "Name of an existing data source",
"targetIndexName" : (required) "Name of an existing index",
"skillsetName" : (required for AI enrichment) "Name of an existing skillset",
"disabled" : (optional) Boolean value indicating whether the indexer is disabled. False by default,
"schedule" : (optional but runs once immediately if unspecified) { ... },
"parameters": { (optional)
"batchSize": null,
"maxFailedItems": 0,
"maxFailedItemsPerBatch": 0,
"base64EncodeKeys": null,
"configuration": { (optional, mostly specific to the data source)
"executionEnvironment": null
}
},
"fieldMappings" : (optional) { ... },
"outputFieldMappings" : (required for AI enrichment) { ... },
"encryptionKey":(optional) { }
}
要求には次のプロパティが含まれます。
プロパティ | 説明 |
---|---|
name | 必須。 名前は小文字で、文字または数字で始まり、スラッシュやドットがなく、128 文字未満である必要があります。 名前は文字または数字で始まる必要がありますが、ダッシュが連続していない限り、名前の残りの部分には任意の文字、数字、ダッシュを含めることができます。 |
dataSourceName | 必須。 既存の データ ソースの名前。 多くの場合、インデクサーがソース プラットフォームの特性を悪用するために使用できるプロパティが含まれています。 そのため、インデクサーに渡すデータ ソースによって、Azure BLOB でのコンテンツ タイプのフィルター処理など、特定のプロパティとパラメーターの可用性が決まります。 または Azure SQL Database のクエリ タイムアウト。 |
targetIndexName | 必須。 既存の インデックス スキーマの名前。 フィールドの使用方法を決定する、検索可能、フィルター可能、取得可能、およびその他の属性を含むフィールド コレクションを定義します。 インデックス作成中、インデクサーはデータ ソースをクロールします。必要に応じて、ドキュメントを解読して情報を抽出したり、結果を JSON にシリアル化したり、インデックス用に定義したスキーマに基づいてペイロードにインデックスを付けたりします。 |
skillsetName | AI エンリッチメントに必要です。 インデクサーごとに 1 つずつ、既存の スキルセットの名前。 データ ソースとインデックスと同様に、スキルセットはインデクサーにアタッチする独立した定義です。 1 つのスキルセットを別のインデクサーと共に使用することもできます。ただし、各インデクサーは一度に 1 つのスキルセットしか使用できません。 |
schedule | 省略可能ですが、指定されていない場合は直ちに 1 回実行され、無効になりません。 スケジュールには 、 interval (必須) と (省略可能) が startTime 含まれています。 詳細については、「 インデクサーをスケジュールする」を参照してください。
interval は、インデクサーを実行する頻度を指定します。 許可される最短の間隔は 5 分です。最長は 1 日です。 XSD "dayTimeDuration" 値 (ISO 8601 期間値の制限されたサブセット) として書式設定する必要があります。 このパターンは、例: "P[nD][T[nH][nM]]". PT15M 15 分ごと、 PT2H 2 時間ごとです。
startTime は、インデクサーの実行を開始する UTC 日時です。 |
disabled | 省略可能。 インデクサーが無効かどうかを示すブール値。 インデクサー定義をすぐに実行せずに作成する場合は、このプロパティを設定します。 既定では false です。 |
parameters | 省略可能。 ランタイムの動作を変更するためのプロパティ。
"batchSize" (整数)。 パフォーマンスを改善する目的で、データ ソースから読み込まれ、1 つのバッチとしてインデックスが作成されるアイテムの数を指定します。 既定値はソース固有です (Azure SQL Database と Azure Cosmos DB の場合は 1000、Azure Blob Storageの場合は 10)。
"maxFailedItems" (整数)。 インデクサーの実行が失敗と見なされる前に許容するエラーの数を指定します。 既定値は 0 です。 いかなるエラーによってもインデックス作成のプロセスを停止させない場合は、-1 に設定します。 失敗したドキュメントに関する情報を取得するには、 インデクサーの状態 の取得を使用します。
"maxFailedItemsPerBatch" (整数)。 インデクサーの実行が失敗と見なされる前に、各バッチで許容するエラーの数を指定します。 既定値は 0 です。 いかなるエラーによってもインデックス作成のプロセスを停止させない場合は、-1 に設定します。
"base64EncodeKey" (ブール値)。 無効な文字を含むドキュメント キーをエンコードするかどうかを指定します。
"configuration" . データ ソースによって異なるプロパティ。
"executionEnvironment" (string)。 内部システム プロセスによって選択された実行環境をオーバーライドします。 インデクサーがプライベート エンドポイント接続経由で外部リソースに Private アクセスする場合は、実行環境を に明示的に設定する必要があります。 この設定は の下にあります "configuration" 。 データ インジェストの場合、この設定は、Basic または Standard (S1、S2、S3) としてプロビジョニングされたサービスに対してのみ有効です。 AI エンリッチメント コンテンツ処理の場合、この設定は S2 と S3 でのみ有効です。 有効な値は大文字と小文字が区別されず、[null または未指定]、(既定値)、 Standard または Private で構成されます。 |
fieldMappings | 省略可能。 検索インデックスの変換先フィールドにソース フィールドを明示的に関連付けます。 ソース フィールドと変換先フィールドの名前または型が異なる場合、または関数を指定する場合に使用されます。
fieldMappings セクションには、(必須、基になるデータ ソースのフィールド) targetFieldName 、(必須、インデックス内のフィールド)、および出力をエンコードするためのオプションmappingFunction が含まれますsourceFieldName 。 サポートされている関数と例の一覧は、 フィールド マッピング関数で確認できます。 一般的な情報については、「 フィールド マッピングと変換」を参照してください。 |
outputFieldMappings |
エンリッチメント パイプラインに必要です。 スキルセットからの出力をインデックスまたはプロジェクションにマップします。
outputFieldMappings セクションには、(必須、エンリッチメント ツリー内のノード) targetFieldName 、(必須、インデックス内のフィールド)、および出力をエンコードするためのオプションmappingFunction が含まれますsourceFieldName 。 サポートされている関数と例の一覧は、 フィールド マッピング関数で確認できます。 一般的な情報については、「 スキルセットから出力フィールドをマップする方法」を参照してください。 |
encryptionKey | 省略可能。 Azure Key Vaultで管理されている、独自のキーを使用して保存中のインデクサー定義を暗号化するために使用されます。 2019-01-01 以降に作成された課金対象の検索サービスで使用できます。
encryptionKey セクションには、ユーザー定義 keyVaultKeyName (必須)、システムによって生成された keyVaultKeyVersion (必須)、キーkeyVaultUri を提供する (必須、DNS 名とも呼ばれます) が含まれます。 URI の例としては、"https://my-keyvault-name.vault.azure.net"" があります。
必要に応じて、マネージド システム ID を使用していないかどうかを指定 accessCredentials できます。 のaccessCredentials プロパティには、指定した Azure Key Vaultへのアクセス許可が付与されたアプリケーション ID Microsoft Entra ID)、および applicationSecret (登録済みアプリケーションの認証キー) が含まれますapplicationId 。 次のセクションの例は、構文を示しています。 |
BLOB の構成パラメーター
Azure Blob のインデックス付けなど、一部のパラメーターは特定のインデクサーにしかありません。
パラメーター | 型と使用できる値 | 使用方法 |
---|---|---|
"parsingMode" |
String"text" "delimitedText" "json" "jsonArray" "jsonLines" |
Azure BLOB の場合、text に設定すると BLOB ストレージ内のプレーン テキスト ファイルのインデックス作成のパフォーマンスが向上します。 CSV BLOB の場合、BLOB が単純な CSV ファイルのときは delimitedText に設定します。 JSON BLOB の場合は、 を に json 設定して構造化コンテンツを抽出するか、 をに設定してjsonArray 、配列の個々の要素を Azure AI Search で個別のドキュメントとして抽出します。 Azure AI Search で個別のドキュメントとして、新しい行で区切られた個々の JSON エンティティを抽出するために使用 jsonLines します。 |
"excludedFileNameExtensions" |
文字列 コンマ区切りのリスト ユーザー定義 |
Azure BLOB の場合、リスト内のファイルの種類をすべて無視します。 たとえば、".png, .png, .mp4" を除外することで、インデックス作成中にこれらのファイルをスキップできます。 |
"indexedFileNameExtensions" |
文字列 コンマ区切りのリスト ユーザー定義 |
Azure BLOB の場合、ファイルの拡張子がリストに含まれる場合は BLOB を選択します。 たとえば、インデックス作成を特定のアプリケーション ファイル ".docx, .pptx, .msg" に集中させ、これらのファイルの種類を具体的に含めることができます。 |
"failOnUnsupportedContentType" |
Boolean true false (既定値) |
Azure BLOB の場合、サポートされていないコンテンツの種類が出現し、すべてのコンテンツの種類 (ファイル拡張子) が事前にわからないときに、インデックス作成を続行する場合は false に設定します。 |
"failOnUnprocessableDocument" |
Boolean true false (既定値) |
Azure BLOB の場合、ドキュメントのインデックス作成が失敗した場合にインデックス作成を続行する場合は、false に設定します。 |
"indexStorageMetadataOnly ForOversizedDocuments" |
ブール値 true false (既定値) |
Azure BLOB の場合、大きすぎて処理できない BLOB コンテンツのストレージ メタデータに対してインデックス作成を続行するには、このプロパティを true に設定します。 サイズが大きい BLOB は、既定ではエラーとして扱われます。 BLOB サイズの制限については、「サービスの 制限」を参照してください。 |
"delimitedTextHeaders" |
文字列 コンマ区切りのリスト ユーザー定義 |
CSV BLOB の場合は、列ヘッダーのコンマ区切りのリストを指定します。これは、ソース フィールドをインデックス内の宛先フィールドにマッピングする場合に便利です。 |
"delimitedTextDelimiter" |
文字列 1 文字 ユーザー定義 |
CSV BLOB の場合は、各行が新しいドキュメントを開始する CSV ファイルの行末区切り記号を指定します (例: "|" )。 |
"firstLineContainsHeaders" |
ブール値 true (既定値) false |
CSV BLOB の場合、 は、各 BLOB の最初の (空白以外の) 行にヘッダーが含まれていることを示します。 |
"documentRoot" |
文字列 ユーザー定義パス |
JSON 配列の場合、構造化ドキュメントまたは半構造化ドキュメントを指定すると、このプロパティを使用して配列へのパスを指定できます。 |
"dataToExtract" |
文字列"storageMetadata" "allMetadata" "contentAndMetadata" (既定値) |
Azure BLOB の場合:"storageMetadata" に設定することで、標準的な BLOB のプロパティおよびユーザー指定のメタデータにのみインデックスを作成します。 "allMetadata" に設定することで、Azure Blob Storage サブシステムによって提供されるメタデータを抽出し、content-type 固有のメタデータ (たとえば、.png ファイルにのみ固有のメタデータ) にインデックスを作成します。 "contentAndMetadata" に設定することで、各 BLOB からすべてのメタデータとテキスト コンテンツを抽出します。 AI エンリッチメントでの画像分析の場合、 が 以外 "none" "dataToExtract" の値に設定されている場合"imageAction" 、この設定は、画像コンテンツから抽出するデータをインデクサーに指示します。 これは、Azure BLOB 内の、.PDF またはその他のアプリケーションの埋め込み画像コンテンツや、.jpg や .png などの画像ファイルに適用されます。 |
"imageAction" |
文字列"none" "generateNormalizedImages" "generateNormalizedImagePerPage" |
Azure BLOB の場合、"none" に設定することで、埋め込み画像またはデータ セット内の画像ファイルを無視します。 既定値です。 AI エンリッチメントでの画像分析の場合は、 を に "generateNormalizedImages" 設定して画像からテキストを抽出し (たとえば、トラフィックの停止記号から "stop" という単語)、コンテンツ フィールドの一部として埋め込みます。 画像分析中、インデクサーは、ドキュメント解読の一部として正規化された画像の配列を作成し、生成された情報をコンテンツ フィールドに埋め込みます。 このアクションを実行するには、"dataToExtract" を "contentAndMetadata" に設定する必要があります。 正規化された画像は、一様な画像出力をもたらす追加処理を参照します。画像出力は、ビジュアル検索の結果に画像を含めるときに一貫性のあるレンダリングを促進するために、サイズと回転を調整されます (たとえば、JFK のデモで見られるような、グラフ コントロール内の同一サイズの写真)。 このオプションを使用すると、各画像に対してこの情報が生成されます。 "generateNormalizedImagePerPage" に設定した場合は、PDF ファイルの処理が異なり、埋め込み画像が抽出されるのではなく、各ページが画像としてレンダリングされ、それに応じて正規化されます。 このページごとのプロセスには、 よりもはるかに "generateNormalizedImages" 長い時間がかかることが予想されます。 PDF 以外のファイルの種類は、"generateNormalizedImages" が設定されている場合と同じように処理されます。 構成を 以外 "none" の"imageAction" 値に設定するには、スキルセットもそのインデクサーにアタッチする必要があり、設計上のパフォーマンスの低いプロセスになる可能性があります。 |
"normalizedImageMaxWidth" "normalizedImageMaxHeight" |
50 - 10000 の範囲の整数 | が設定されたときに "imageAction" 生成される正規化されたイメージの最大幅または高さ (ピクセル単位)。 既定値は 2000 です。 正規化された画像の最大幅と最大高さの既定値 (2000 ピクセル) は、 OCR スキルと画像分析スキルでサポートされる最大サイズに基づいています。 OCR のスキルでは、英語以外の言語の場合は最大の幅と高さ 4200、英語の場合は 10000 がサポートされます。 上限を引き上げると、スキルセットの定義とドキュメントの言語によっては、大きな画像で処理が失敗する可能性があります。 |
"allowSkillsetToReadFileData" |
Boolean true false (既定値) |
パラメーターを "allowSkillsetToReadFileData" に true 設定すると、BLOB データ ソースからダウンロードされた元のファイル データを表すオブジェクトであるパス /document/file_data が作成されます。 これにより、エンリッチメント パイプライン内で処理するための カスタム スキル または ドキュメント抽出スキルに、元のファイル データを渡すことができます。 生成されるオブジェクトは、次のように定義されます。 { "$type": "file", "data": "BASE64 encoded string of the file" } パラメーターを "allowSkillsetToReadFileData" に設定するにはtrue 、スキルセットをそのインデクサーにアタッチし、パラメーターが "parsingMode" 、"text" または "json" に"default" 設定されている必要があります。 |
"pdfTextRotationAlgorithm" |
文字列"none" (既定値)"detectAngles" |
パラメーターを "pdfTextRotationAlgorithm" に "detectAngles" 設定すると、その中でテキストが回転した PDF ファイルから、読みやすく、読みやすいテキスト抽出が生成される場合があります。 このパラメーターを使用すると、パフォーマンスが低下する可能性があることに注意してください。 このパラメーターは PDF ファイルにのみ適用され、テキストが埋め込まれた PDF にのみ適用されます。 回転したテキストが PDF の埋め込み画像内に表示される場合、このパラメーターは適用されません。パラメーターを "pdfTextRotationAlgorithm" に設定するには "detectAngles" 、 パラメーターが "parsingMode" に "default" 設定されている必要があります。 |
Azure Cosmos DB 構成パラメーター
次のパラメーターは、Cosmos DB インデクサーに固有です。
パラメーター | 型と使用できる値 | 使用 |
---|---|---|
"assumeOrderByHighWaterMarkColumn" |
Boolean |
SQL API を使用した Cosmos DB インデクサーの場合は、インデックス作成のためにドキュメントを返すために使用されるクエリが列によって実際に順序付けされていることを示すヒントを Cosmos DB に提供するには、このパラメーターを_ts 設定します。 このパラメーターを設定すると、 インクリメンタル インデックス作成シナリオの結果が向上します。 |
Azure SQL構成パラメーター
Azure SQL Database に固有のパラメーターを次に示します。
パラメーター | 型と使用できる値 | 使用方法 |
---|---|---|
"queryTimeout" |
String "hh:mm:ss" "00:05:00" |
Azure SQL Database の場合、このパラメーターを設定することで、既定の 5 分よりもタイムアウトを長くします。 |
"convertHighWaterMarkToRowVersion" |
Boolean | 高いウォーター マーク列に rowversion データ型を使用するには、このパラメーターを "true" に設定します。 このプロパティが true に設定されている場合、インデクサーは、インデクサーを実行する前に rowversion 値から 1 つを減算します。 これは、1 対多の結合を持つビューに重複する rowversion 値を持つ行がある可能性があるためです。 1 を減算すると、インデクサー クエリはこれらの行を見逃すことがなくなります。 |
"disableOrderByHighWaterMarkColumn" |
Boolean | 変更検出に使用されるクエリで ORDER BY 動作を無効にする 場合は、このパラメーターを "true" に設定します。 高ウォーター マーク変更検出ポリシーを使用している場合、インデクサーは WHERE 句と ORDER BY 句を使用して、インデックス作成が必要な行を追跡します (WHERE [High Water Mark Column] > [Current High Water Mark Value] ORDER BY [High Water Mark Column] )。 このパラメーターは ORDER BY 動作を無効にします。 インデックス作成は速く完了しますが、何らかの理由でインデクサーが中断された場合は、インデクサー ジョブ全体を完全に繰り返す必要があります。 |
Response
要求成功の場合: 201 作成されました。
例
例: スケジュールパラメーターとジェネリック パラメーターを持つインデクサー
2021 年 1 月 1 日 (UTC) に開始され、1 時間ごとに実行されるスケジュールで、データ ソースorders
によってordersds
参照されるテーブルからインデックスにデータをコピーするインデクサーを作成します。 インデックス作成に失敗した項目が各バッチで 5 つ以下で、合計で 10 以下あれば、各インデクサーの呼び出しは成功となります。
{
"name" : "myindexer",
"description" : "a cool indexer",
"dataSourceName" : "ordersds",
"targetIndexName" : "orders",
"schedule" : { "interval" : "PT1H", "startTime" : "2021-01-01T00:00:00Z" },
"parameters" : { "maxFailedItems" : 10, "maxFailedItemsPerBatch" : 5 }
}
注意
インデクサーが特定のスケジュールに設定されているが実行のたびに同じドキュメントに対して繰り返し失敗する場合、進捗が再び正常化するまでの間、インデクサーは (最大で 24 時間に 1 回に) 間隔を開けて実行頻度を下げます。 インデクサーが特定の時点でスタックする原因となった問題を修正したと思われる場合は、リセットを実行し 、その後にインデクサーのオンデマンド実行を実行し、それが正常に進行した場合、インデクサーは設定されたスケジュール間隔に再び戻ります。
例: BLOB パラメーターを持つインデクサー
必要に応じて、インデクサーに、実行時の動作を変更する構成パラメーターを指定できます。 構成パラメーターはインデクサー要求でコンマ区切りであり、データ ソースの種類に固有です。 次の構成パラメーターは、BLOB のインデックス作成に使用する手順を示しています。
{
"name" : "my-blob-indexer-for-cognitive-search",
... other indexer properties
"parameters" :
{
"maxFailedItems" : "15",
"batchSize" : "100",
"configuration" :
{
"parsingMode" : "json",
"indexedFileNameExtensions" : ".json, .jpg, .png",
"imageAction" : "generateNormalizedImages",
"dataToExtract" : "contentAndMetadata" ,
"executionEnvironment": "Standard"
}
}
}
例: フィールド マッピングを使用したインデクサー
ソース テーブルのフィールド _id
を "id"
検索インデックスのフィールドにマップします。 Azure AI Search では、フィールド名をアンダースコアで始めることはできません。 フィールド マッピングでは、名前の不一致を解決できます。 ソースとターゲットの両方のフィールド名で大文字と小文字が区別されます。 詳細については、フィールドのマッピングと変換に関する記事をご覧ください。
"fieldMappings" : [
{ "sourceFieldName" : "_id", "targetFieldName" : "id" },
{ "sourceFieldName" : "_timestamp", "targetFieldName" : "timestamp" }
]
例: AI エンリッチメントを使用したインデクサー
と outputFieldMappings
への参照によって示される AI エンリッチメントをskillset
示します。
スキルセットは高水準リソースであり、個別に定義されます。 この例は、 AI エンリッチメント チュートリアルのインデクサー定義の省略形です。
{
"name":"demoindexer",
"dataSourceName" : "demodata",
"targetIndexName" : "demoindex",
"skillsetName" : "demoskillset",
"fieldMappings" : [
{
"sourceFieldName" : "content",
"targetFieldName" : "content"
}
],
"outputFieldMappings" :
[
{
"sourceFieldName" : "/document/organizations",
"targetFieldName" : "organizations"
},
],
"parameters":
{
"maxFailedItems":-1,
"configuration":
{
"dataToExtract": "contentAndMetadata",
"imageAction": "generateNormalizedImages"
}
}
}
例: スキルセットと出力フィールド マッピングを使用したインデクサー
スキルセットがインデクサーにバインドされている AI エンリッチメント シナリオでは、 を追加 outputFieldMappings
して、コンテンツをインデックス内の検索可能なフィールドに提供するエンリッチメント ステップの出力を関連付ける必要があります。
sourceFieldName
はエンリッチメント ツリー内のノードです。 ソース ドキュメント内の 2 つの異なるフィールドからのエンリッチメント中に構築された複合構造である可能性があります。 は targetFieldName
検索インデックスのフィールドです。 詳細については、「 スキルセットから出力フィールドをマップする方法」を参照してください。
"outputFieldMappings" : [
{
"sourceFieldName" : "/document/organizations",
"targetFieldName" : "organizations"
},
{
"sourceFieldName" : "/document/pages/*/keyPhrases/*",
"targetFieldName" : "keyphrases"
},
{
"sourceFieldName": "/document/languageCode",
"targetFieldName": "language",
"mappingFunction": null
}
]
例: 暗号化キー
暗号化キーは、追加の暗号化に使用されるカスタマー マネージド キーです。 詳細については、「Azure Key Vault でのカスタマー マネージド キーを使用した暗号化」を参照してください。
{
"name" : "myindexer",
"description" : "a cool indexer",
"dataSourceName" : "ordersds",
"targetIndexName" : "orders",
"schedule" : { "interval" : "PT1H", "startTime" : "2021-01-01T00:00:00Z" },
"parameters" : { "maxFailedItems" : 10, "maxFailedItemsPerBatch" : 5 },
"encryptionKey": (optional) {
"keyVaultKeyName": "Name of the Azure Key Vault key used for encryption",
"keyVaultKeyVersion": "Version of the Azure Key Vault key",
"keyVaultUri": "URI of Azure Key Vault, also referred to as DNS name, that provides the key. An example URI might be https://my-keyvault-name.vault.azure.net",
"accessCredentials": (optional, only if not using managed system identity) {
"applicationId": "Microsoft Entra ID application ID that was granted access permissions to your specified Azure Key Vault",
"applicationSecret": "Authentication key of the registered application)"}
}
}