Data Sources - Create
新しいデータソースを作成します。
POST {endpoint}/datasources?api-version=2024-07-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=2024-07-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 |
データソースへの接続に使用できる資格情報を表します。 |
Error |
リソース管理エラーの追加情報。 |
Error |
エラーの詳細。 |
Error |
エラー応答 |
High |
高基準列の値に基づいて変更をキャプチャするデータ変更検出ポリシーを定義します。 |
Search |
インデックスが作成されるエンティティ (Azure SQL テーブルや CosmosDB コレクションなど) に関する情報を表します。 |
Search |
インデクサーの構成に使用できるデータソース定義を表します。 |
Search |
データソースの型を定義します。 |
Search |
Azure Key Vault のカスタマー マネージド暗号化キー。 作成および管理するキーは、インデックスやシノニム マップなどの保存データの暗号化または暗号化解除に使用できます。 |
Soft |
論理的な削除戦略を実装するデータ削除検出ポリシーを定義します。 指定された "論理的な削除" 列の値に基づいて、アイテムを削除するかどうかを決定します。 |
Sql |
Azure SQL Database の統合変更追跡機能を使用して変更をキャプチャするデータ変更検出ポリシーを定義します。 |
AzureActiveDirectoryApplicationCredentials
Azure Key Vault に格納されている暗号化キーへの認証済みアクセスに使用される、検索サービス用に作成された登録済みアプリケーションの資格情報。
名前 | 型 | 説明 |
---|---|---|
applicationId |
string |
保存データの暗号化時に使用される Azure Key Vault に対する必要なアクセス許可が付与された AAD アプリケーション ID。 アプリケーション ID は、AAD アプリケーションのオブジェクト ID と混同しないでください。 |
applicationSecret |
string |
指定した AAD アプリケーションの認証キー。 |
DataSourceCredentials
データソースへの接続に使用できる資格情報を表します。
名前 | 型 | 説明 |
---|---|---|
connectionString |
string |
データソースの接続文字列。 接続文字列を更新しない場合は、 |
ErrorAdditionalInfo
リソース管理エラーの追加情報。
名前 | 型 | 説明 |
---|---|---|
info |
object |
追加情報。 |
type |
string |
追加情報の種類。 |
ErrorDetail
エラーの詳細。
名前 | 型 | 説明 |
---|---|---|
additionalInfo |
エラーの追加情報。 |
|
code |
string |
エラー コード。 |
details |
エラーの詳細。 |
|
message |
string |
エラー メッセージ。 |
target |
string |
エラーターゲット。 |
ErrorResponse
エラー応答
名前 | 型 | 説明 |
---|---|---|
error |
エラー オブジェクト。 |
HighWaterMarkChangeDetectionPolicy
高基準列の値に基づいて変更をキャプチャするデータ変更検出ポリシーを定義します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
データ変更検出ポリシーの種類を指定する URI フラグメント。 |
highWaterMarkColumnName |
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 の統合変更追跡機能を使用して変更をキャプチャするデータ変更検出ポリシーを定義します。
名前 | 型 | 説明 |
---|---|---|
@odata.type |
string:
#Microsoft. |
データ変更検出ポリシーの種類を指定する URI フラグメント。 |