Data Sources - Create
新しいデータソースを作成します。
POST {endpoint}/datasources?api-version=2023-11-01
URI パラメーター
名前 | / | 必須 | 型 | 説明 |
---|---|---|---|---|
endpoint
|
path | True |
string |
検索サービスのエンドポイント URL。 |
api-version
|
query | True |
string |
クライアント API のバージョン。 |
要求ヘッダー
名前 | 必須 | 型 | 説明 |
---|---|---|---|
x-ms-client-request-id |
string uuid |
デバッグに役立つ要求と共に送信された追跡 ID。 |
要求本文
名前 | 必須 | 型 | 説明 |
---|---|---|---|
container | True |
データソースのデータ コンテナー。 |
|
credentials | True |
データソースの資格情報。 |
|
name | True |
string |
データソースの名前。 |
type | True |
データソースの型。 |
|
@odata.etag |
string |
データ ソースの ETag。 |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
データソースのデータ変更検出ポリシー。 |
|
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
データソースのデータ削除検出ポリシー。 |
|
description |
string |
データソースの説明。 |
|
encryptionKey |
Azure Key Vaultで作成する暗号化キーの説明。 このキーは、Microsoft でさえもデータ ソース定義の暗号化を解除できないという完全な保証が必要な場合に、データ ソース定義の保存時の追加レベルを提供するために使用されます。 データ ソース定義を暗号化すると、常に暗号化されたままになります。 このプロパティを null に設定しようとすると、検索サービスは無視されます。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。データソース定義は影響を受けません。 カスタマー マネージド キーを使用した暗号化は無料の検索サービスでは使用できません。また、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
応答
名前 | 型 | 説明 |
---|---|---|
201 Created | ||
Other Status Codes |
エラー応答。 |
例
SearchServiceCreateDataSource
要求のサンプル
POST https://myservice.search.windows.net/datasources?api-version=2023-11-01
{
"name": "mydocdbdatasource",
"description": "My Cosmos DB data source.",
"type": "cosmosdb",
"credentials": {
"connectionString": "AccountEndpoint=https://myDocDbEndpoint.documents.azure.com;AccountKey=myDocDbAuthKey;Database=myDocDbDatabaseId"
},
"container": {
"name": "myDocDbCollectionId",
"query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts"
},
"dataChangeDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName": "_ts"
},
"dataDeletionDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
"softDeleteColumnName": "isDeleted",
"softDeleteMarkerValue": "true"
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": "<applicationSecret>"
}
}
}
応答のサンプル
{
"name": "mydocdbdatasource",
"description": "My Cosmos DB data source.",
"type": "cosmosdb",
"credentials": {
"connectionString": null
},
"container": {
"name": "myDocDbCollectionId",
"query": "SELECT c.id, c.userId, tag, c._ts FROM c JOIN tag IN c.tags WHERE c._ts >= @HighWaterMark ORDER BY c._ts"
},
"dataChangeDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.HighWaterMarkChangeDetectionPolicy",
"highWaterMarkColumnName": "_ts"
},
"dataDeletionDetectionPolicy": {
"@odata.type": "#Microsoft.Azure.Search.SoftDeleteColumnDeletionDetectionPolicy",
"softDeleteColumnName": "isDeleted",
"softDeleteMarkerValue": "true"
},
"encryptionKey": {
"keyVaultKeyName": "myUserManagedEncryptionKey-createdinAzureKeyVault",
"keyVaultKeyVersion": "myKeyVersion-32charAlphaNumericString",
"keyVaultUri": "https://myKeyVault.vault.azure.net",
"accessCredentials": {
"applicationId": "00000000-0000-0000-0000-000000000000",
"applicationSecret": null
}
}
}
定義
名前 | 説明 |
---|---|
Azure |
Azure Key Vaultに格納されている暗号化キーへの認証済みアクセスに使用される、検索サービス用に作成された登録済みアプリケーションの資格情報。 |
Data |
データソースに接続するために使用できる資格情報を表します。 |
High |
高いウォーター マーク列の値に基づいて変更をキャプチャするデータ変更検出ポリシーを定義します。 |
Search |
API のエラー条件について説明します。 |
Search |
インデックスが作成されるエンティティ (Azure SQL テーブルや CosmosDB コレクションなど) に関する情報を表します。 |
Search |
インデクサーの構成に使用できるデータソース定義を表します。 |
Search |
データソースの型を定義します。 |
Search |
Azure Key Vaultのカスタマー マネージド暗号化キー。 作成および管理するキーを使用すると、インデックスやシノニム マップなど、検索サービスの保存データを暗号化または暗号化解除できます。 |
Soft |
論理的な削除戦略を実装するデータ削除検出ポリシーを定義します。 指定された "論理的な削除" 列の値に基づいてアイテムを削除するかどうかを決定します。 |
Sql |
Azure SQL Database の統合Change Tracking機能を使用して変更をキャプチャするデータ変更検出ポリシーを定義します。 |
AzureActiveDirectoryApplicationCredentials
Azure Key Vaultに格納されている暗号化キーへの認証済みアクセスに使用される、検索サービス用に作成された登録済みアプリケーションの資格情報。
名前 | 型 | 説明 |
---|---|---|
applicationId |
string |
保存データの暗号化時に使用される Azure Key Vaultに必要なアクセス許可が付与された AAD アプリケーション ID。 アプリケーション ID は、AAD アプリケーションのオブジェクト ID と混同しないでください。 |
applicationSecret |
string |
指定した AAD アプリケーションの認証キー。 |
DataSourceCredentials
データソースに接続するために使用できる資格情報を表します。
名前 | 型 | 説明 |
---|---|---|
connectionString |
string |
データソースの接続文字列。 接続文字列を更新しない場合は、 を |
HighWaterMarkChangeDetectionPolicy
高いウォーター マーク列の値に基づいて変更をキャプチャするデータ変更検出ポリシーを定義します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
データ変更検出ポリシーの種類を指定する URI フラグメント。 |
highWaterMarkColumnName |
string |
高いウォーター マーク列の名前。 |
SearchError
API のエラー条件について説明します。
名前 | 型 | 説明 |
---|---|---|
code |
string |
サーバー定義のエラー コードのセットの 1 つ。 |
details |
この報告されたエラーの原因となった特定のエラーに関する詳細の配列。 |
|
message |
string |
エラーの人間が判読できる表現。 |
SearchIndexerDataContainer
インデックスが作成されるエンティティ (Azure SQL テーブルや CosmosDB コレクションなど) に関する情報を表します。
名前 | 型 | 説明 |
---|---|---|
name |
string |
インデックスが作成されるテーブルまたはビュー (Azure SQL データ ソースの場合) またはコレクション (CosmosDB データ ソースの場合) の名前。 |
query |
string |
このデータ コンテナーに適用されるクエリ。 このパラメーターの構文と意味は、データソース固有です。 Azure SQL データソースではサポートされていません。 |
SearchIndexerDataSource
インデクサーの構成に使用できるデータソース定義を表します。
名前 | 型 | 説明 |
---|---|---|
@odata.etag |
string |
データ ソースの ETag。 |
container |
データソースのデータ コンテナー。 |
|
credentials |
データソースの資格情報。 |
|
dataChangeDetectionPolicy | DataChangeDetectionPolicy: |
データソースのデータ変更検出ポリシー。 |
dataDeletionDetectionPolicy | DataDeletionDetectionPolicy: |
データソースのデータ削除検出ポリシー。 |
description |
string |
データソースの説明。 |
encryptionKey |
Azure Key Vaultで作成する暗号化キーの説明。 このキーは、Microsoft でさえもデータ ソース定義の暗号化を解除できないという完全な保証が必要な場合に、データ ソース定義の保存時の追加レベルを提供するために使用されます。 データ ソース定義を暗号化すると、常に暗号化されたままになります。 このプロパティを null に設定しようとすると、検索サービスは無視されます。 暗号化キーをローテーションする場合は、必要に応じてこのプロパティを変更できます。データソース定義は影響を受けません。 カスタマー マネージド キーを使用した暗号化は無料の検索サービスでは使用できません。また、2019 年 1 月 1 日以降に作成された有料サービスでのみ使用できます。 |
|
name |
string |
データソースの名前。 |
type |
データソースの型。 |
SearchIndexerDataSourceType
データソースの型を定義します。
名前 | 型 | 説明 |
---|---|---|
adlsgen2 |
string |
ADLS Gen2 データソースを示します。 |
azureblob |
string |
Azure Blob データソースを示します。 |
azuresql |
string |
Azure SQL データソースを示します。 |
azuretable |
string |
Azure Table データソースを示します。 |
cosmosdb |
string |
CosmosDB データソースを示します。 |
mysql |
string |
MySql データソースを示します。 |
SearchResourceEncryptionKey
Azure Key Vaultのカスタマー マネージド暗号化キー。 作成および管理するキーを使用すると、インデックスやシノニム マップなど、検索サービスの保存データを暗号化または暗号化解除できます。
名前 | 型 | 説明 |
---|---|---|
accessCredentials |
Azure Key Vaultへのアクセスに使用されるオプションの Azure Active Directory 資格情報。 代わりにマネージド ID を使用する場合は必須ではありません。 |
|
keyVaultKeyName |
string |
保存データの暗号化に使用する Azure Key Vault キーの名前。 |
keyVaultKeyVersion |
string |
保存データの暗号化に使用する Azure Key Vault キーのバージョン。 |
keyVaultUri |
string |
保存データの暗号化に使用するキーを含む Azure Key Vaultの URI (DNS 名とも呼ばれます)。 URI の例として、 |
SoftDeleteColumnDeletionDetectionPolicy
論理的な削除戦略を実装するデータ削除検出ポリシーを定義します。 指定された "論理的な削除" 列の値に基づいてアイテムを削除するかどうかを決定します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
データ削除検出ポリシーの種類を指定する URI フラグメント。 |
softDeleteColumnName |
string |
論理的な削除の検出に使用する列の名前。 |
softDeleteMarkerValue |
string |
アイテムを削除済みとして識別するマーカー値。 |
SqlIntegratedChangeTrackingPolicy
Azure SQL Database の統合Change Tracking機能を使用して変更をキャプチャするデータ変更検出ポリシーを定義します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
データ変更検出ポリシーの種類を指定する URI フラグメント。 |