你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Indexers - List

Lists搜索服务可用的所有索引器。

GET {endpoint}/indexers?api-version=2023-11-01
GET {endpoint}/indexers?$select={$select}&api-version=2023-11-01

URI 参数

名称 必需 类型 说明
endpoint
path True

string

搜索服务的终结点 URL。

api-version
query True

string

客户端 API 版本。

$select
query

string

选择要检索的索引器的顶级属性。 指定为 JSON 属性名称的逗号分隔列表,或 * 用于所有属性。 默认值为所有属性。

请求头

名称 必需 类型 说明
x-ms-client-request-id

string

uuid

随请求一起发送的跟踪 ID,以帮助调试。

响应

名称 类型 说明
200 OK

ListIndexersResult

Other Status Codes

SearchError

错误响应。

示例

SearchServiceListIndexers

示例请求

GET https://myservice.search.windows.net/indexers?$select=*&api-version=2023-11-01

示例响应

{
  "value": [
    {
      "name": "myindexer",
      "description": "a cool indexer",
      "dataSourceName": "mydocdbdatasource",
      "targetIndexName": "orders",
      "schedule": {
        "interval": "PT1H",
        "startTime": "2015-01-01T00:00:00Z"
      },
      "parameters": {
        "maxFailedItems": 10,
        "maxFailedItemsPerBatch": 5
      },
      "fieldMappings": [],
      "disabled": false
    },
    {
      "name": "myotherindexer",
      "description": "another cool indexer",
      "dataSourceName": "myblobdatasource",
      "targetIndexName": "orders",
      "parameters": {
        "maxFailedItems": 10,
        "maxFailedItemsPerBatch": 5,
        "batchSize": 15
      },
      "fieldMappings": [
        {
          "sourceFieldName": "PersonName",
          "targetFieldName": "FirstName",
          "mappingFunction": {
            "name": "extractTokenAtPosition",
            "parameters": {
              "delimiter": " ",
              "position": 0
            }
          }
        },
        {
          "sourceFieldName": "PersonName",
          "targetFieldName": "LastName",
          "mappingFunction": {
            "name": "extractTokenAtPosition",
            "parameters": {
              "delimiter": " ",
              "position": 1
            }
          }
        }
      ],
      "disabled": false,
      "encryptionKey": {
        "keyVaultKeyName": "myKeyName",
        "keyVaultKeyVersion": "myKeyVersion",
        "keyVaultUri": "https://myKeyVault.vault.azure.net",
        "accessCredentials": {
          "applicationId": "00000000-0000-0000-0000-000000000000",
          "applicationSecret": null
        }
      }
    }
  ]
}

定义

名称 说明
AzureActiveDirectoryApplicationCredentials

为搜索服务创建的已注册应用程序的凭据,用于对 Azure 密钥保管库中存储的加密密钥进行身份验证访问。

BlobIndexerDataToExtract

指定要从 Azure Blob 存储中提取的数据,并在“imageAction”设置为“none”以外的值时告知索引器从图像内容中提取哪些数据。 这适用于 .PDF 或其他应用程序中的嵌入图像内容,或者 Azure Blob 中的 .jpg 和 .png 等图像文件。

BlobIndexerImageAction

确定如何处理 Azure Blob 存储中的嵌入图像和图像文件。 将“imageAction”配置设置为除“none”以外的任何值都需要将技能集附加到该索引器。

BlobIndexerParsingMode

表示用于从 Azure Blob 数据源编制索引的解析模式。

BlobIndexerPDFTextRotationAlgorithm

确定从 Azure Blob 存储中的 PDF 文件提取文本的算法。

FieldMapping

定义数据源中的字段与索引中目标字段之间的映射。

FieldMappingFunction

表示在编制索引之前转换数据源中的值的函数。

IndexerExecutionEnvironment

指定索引器应在其中执行的环境。

IndexingParameters

表示索引器执行的参数。

IndexingParametersConfiguration

索引器特定配置属性的字典。 每个名称都是特定属性的名称。 每个值必须是基元类型。

IndexingSchedule

表示索引器执行的计划。

ListIndexersResult

“列出索引器”请求的响应。 如果成功,则包含所有索引器的完整定义。

SearchError

描述 API 的错误条件。

SearchIndexer

表示索引器。

SearchResourceEncryptionKey

Azure 密钥保管库中客户管理的加密密钥。 创建和管理的密钥可用于加密或解密搜索服务上的静态数据,例如索引和同义词映射。

AzureActiveDirectoryApplicationCredentials

为搜索服务创建的已注册应用程序的凭据,用于对 Azure 密钥保管库中存储的加密密钥进行身份验证访问。

名称 类型 说明
applicationId

string

AAD 应用程序 ID,该 ID 已被授予对 Azure 密钥保管库的所需访问权限,该 AZURE 密钥保管库将在加密静态数据时使用。 不应将应用程序 ID 与 AAD 应用程序的对象 ID 混淆。

applicationSecret

string

指定 AAD 应用程序的身份验证密钥。

BlobIndexerDataToExtract

指定要从 Azure Blob 存储中提取的数据,并在“imageAction”设置为“none”以外的值时告知索引器从图像内容中提取哪些数据。 这适用于 .PDF 或其他应用程序中的嵌入图像内容,或者 Azure Blob 中的 .jpg 和 .png 等图像文件。

名称 类型 说明
allMetadata

string

提取 Azure Blob 存储子系统提供的元数据和内容类型特定的元数据 (例如,仅 .png 文件的唯一元数据) 编制索引。

contentAndMetadata

string

从每个 Blob 中提取所有元数据和文本内容。

storageMetadata

string

仅索引标准 Blob 属性和用户指定的元数据。

BlobIndexerImageAction

确定如何处理 Azure Blob 存储中的嵌入图像和图像文件。 将“imageAction”配置设置为除“none”以外的任何值都需要将技能集附加到该索引器。

名称 类型 说明
generateNormalizedImagePerPage

string

从图像中提取文本 (例如,从交通停止标志) “STOP”一词,并将其嵌入内容字段,但 PDF 文件处理方式不同,因为每个页面将呈现为图像并相应地规范化,而不是提取嵌入的图像。 非 PDF 文件类型的处理与设置“generateNormalizedImages”相同。

generateNormalizedImages

string

从图像中提取文本 (例如,从交通停止标志) “STOP”一词,并将其嵌入到内容字段中。 此操作要求将“dataToExtract”设置为“contentAndMetadata”。 规范化图像是指在视觉搜索结果中包含图像时,其他处理会导致统一的图像输出、调整大小和旋转,以促进一致的呈现。 当使用此选项时,将为每个图像生成此信息。

none

string

忽略数据集中的嵌入图像或图像文件。 这是默认值。

BlobIndexerParsingMode

表示用于从 Azure Blob 数据源编制索引的解析模式。

名称 类型 说明
default

string

对于正常文件处理,设置为默认值。

delimitedText

string

当 Blob 为纯 CSV 文件时,设置为 delimitedText。

json

string

设置为 json 可从 JSON 文件中提取结构化内容。

jsonArray

string

设置为 jsonArray 可将 JSON 数组的各个元素提取为单独的文档。

jsonLines

string

设置为 jsonLines 可提取单个 JSON 实体(用新行分隔)作为单独的文档。

text

string

设置为 text 可提高 Blob 存储中纯文本文件的索引性能。

BlobIndexerPDFTextRotationAlgorithm

确定从 Azure Blob 存储中的 PDF 文件提取文本的算法。

名称 类型 说明
detectAngles

string

可以从包含旋转文本的 PDF 文件生成更好、更易读的文本提取。 请注意,使用此参数时,可能会对性能速度产生较小的影响。 此参数仅适用于 PDF 文件,并且仅适用于包含嵌入文本的 PDF。 如果旋转的文本出现在 PDF 中的嵌入图像中,则此参数不适用。

none

string

利用普通文本提取。 这是默认值。

FieldMapping

定义数据源中的字段与索引中目标字段之间的映射。

名称 类型 说明
mappingFunction

FieldMappingFunction

在编制索引之前应用于每个源字段值的函数。

sourceFieldName

string

数据源中字段的名称。

targetFieldName

string

索引中目标字段的名称。 默认与源字段名称相同。

FieldMappingFunction

表示在编制索引之前转换数据源中的值的函数。

名称 类型 说明
name

string

字段映射函数的名称。

parameters

object

要传递给函数的参数名称/值对的字典。 每个值必须是基元类型。

IndexerExecutionEnvironment

指定索引器应在其中执行的环境。

名称 类型 说明
private

string

指示索引器应使用专门为搜索服务预配的环境运行。 仅当索引器需要通过共享专用链接资源安全地访问资源时,才应将其指定为执行环境。

standard

string

指示搜索服务可以确定索引器应执行的位置。 如果未指定任何内容,则这是默认环境,并且是建议的值。

IndexingParameters

表示索引器执行的参数。

名称 类型 默认值 说明
batchSize

integer

从数据源读取并作为单个批编制索引以提高性能的项数。 默认值取决于数据源类型。

configuration

IndexingParametersConfiguration

索引器特定配置属性的字典。 每个名称都是特定属性的名称。 每个值必须是基元类型。

maxFailedItems

integer

0

索引器执行仍被视为成功的索引编制失败的最大项数。 -1 表示没有限制。 默认为 0。

maxFailedItemsPerBatch

integer

0

单个批处理中可能失败的索引编制仍被视为成功的最大项数。 -1 表示没有限制。 默认为 0。

IndexingParametersConfiguration

索引器特定配置属性的字典。 每个名称都是特定属性的名称。 每个值必须是基元类型。

名称 类型 默认值 说明
allowSkillsetToReadFileData

boolean

False

如果为 true,将创建路径 //document//file_data,该路径是表示从 Blob 数据源下载的原始文件数据的对象。 这使你可以将原始文件数据传递给自定义技能,以便在扩充管道中进行处理,或传递到文档提取技能。

dataToExtract

BlobIndexerDataToExtract

contentAndMetadata

指定要从 Azure Blob 存储中提取的数据,并在“imageAction”设置为“none”以外的值时告知索引器从图像内容中提取哪些数据。 这适用于 .PDF 或其他应用程序中的嵌入图像内容,或者 Azure Blob 中的 .jpg 和 .png 等图像文件。

delimitedTextDelimiter

string

对于 CSV Blob,指定 CSV 文件的行尾单字符分隔符,其中每行启动一个新文档 (例如“|”) 。

delimitedTextHeaders

string

对于 CSV Blob,指定以逗号分隔的列标题列表,用于将源字段映射到索引中的目标字段。

documentRoot

string

对于 JSON 数组,给定结构化或半结构化文档,可以使用此属性指定数组的路径。

excludedFileNameExtensions

string

从 Azure Blob 存储进行处理时要忽略的文件扩展名的逗号分隔列表。 例如,可以排除“.png,.mp4”,以便在编制索引期间跳过这些文件。

executionEnvironment

IndexerExecutionEnvironment

standard

指定索引器应在其中执行的环境。

failOnUnprocessableDocument

boolean

False

对于 Azure Blob,如果要在文档索引失败时继续编制索引,请将 设置为 false。

failOnUnsupportedContentType

boolean

False

对于 Azure Blob,如果要在遇到不受支持的内容类型时继续编制索引,并且事先不知道所有内容类型 (文件扩展名) ,请将 设置为 false。

firstLineContainsHeaders

boolean

True

对于 CSV Blob,指示每个 blob 的第一个 (非空白) 行包含标头。

imageAction

BlobIndexerImageAction

none

确定如何处理 Azure Blob 存储中的嵌入图像和图像文件。 将“imageAction”配置设置为除“none”以外的任何值都需要将技能集附加到该索引器。

indexStorageMetadataOnlyForOversizedDocuments

boolean

False

对于 Azure Blob,将此属性设置为 true,以便仍为太大而无法处理的 Blob 内容的存储元数据编制索引。 过大的 blob 会被默认视为错误。 有关 Blob 大小的限制,请参阅 https://docs.microsoft.com/azure/search/search-limits-quotas-capacity

indexedFileNameExtensions

string

从 Azure Blob 存储进行处理时要选择的文件扩展名的逗号分隔列表。 例如,可以让索引编制侧重于特定的应用程序文件“.docx、.pptx、.msg”,以便专门包括这些文件类型。

parsingMode

BlobIndexerParsingMode

default

表示用于从 Azure Blob 数据源编制索引的解析模式。

pdfTextRotationAlgorithm

BlobIndexerPDFTextRotationAlgorithm

none

确定从 Azure Blob 存储中的 PDF 文件提取文本的算法。

queryTimeout

string

00:05:00

为Azure SQL数据库数据源(以“hh:mm:ss”格式指定)将超时时间增加到 5 分钟以上。

IndexingSchedule

表示索引器执行的计划。

名称 类型 说明
interval

string

索引器执行之间的时间间隔。

startTime

string

索引器应开始运行的时间。

ListIndexersResult

“列出索引器”请求的响应。 如果成功,则包含所有索引器的完整定义。

名称 类型 说明
value

SearchIndexer[]

搜索服务中的索引器。

SearchError

描述 API 的错误条件。

名称 类型 说明
code

string

服务器定义的一组错误代码中的一个。

details

SearchError[]

有关导致此项报告错误的特定错误的详细信息数组。

message

string

错误的用户可读表示形式。

SearchIndexer

表示索引器。

名称 类型 默认值 说明
@odata.etag

string

索引器的 ETag。

dataSourceName

string

此索引器从中读取数据的数据源的名称。

description

string

索引器的说明。

disabled

boolean

False

一个值,该值指示是否禁用索引器。 默认值为 false。

encryptionKey

SearchResourceEncryptionKey

在 Azure 密钥保管库 中创建的加密密钥的说明。 此密钥用于为索引器定义 (提供额外的静态加密级别,以及索引器执行状态) (如果希望完全保证没有人(甚至 Microsoft)无法解密它们。 加密索引器定义后,它将始终保持加密状态。 搜索服务将忽略将此属性设置为 null 的尝试。 如果要轮换加密密钥,可以根据需要更改此属性;索引器定义 (和索引器执行状态) 将不受影响。 使用客户管理的密钥加密不适用于免费搜索服务,并且仅适用于 2019 年 1 月 1 日或之后创建的付费服务。

fieldMappings

FieldMapping[]

定义数据源中的字段与索引中相应目标字段之间的映射。

name

string

索引器的名称。

outputFieldMappings

FieldMapping[]

输出字段映射在扩充后应用,在编制索引之前立即应用。

parameters

IndexingParameters

索引器执行的参数。

schedule

IndexingSchedule

此索引器的计划。

skillsetName

string

使用此索引器执行的技能组的名称。

targetIndexName

string

此索引器将数据写入到的索引的名称。

SearchResourceEncryptionKey

Azure 密钥保管库中客户管理的加密密钥。 创建和管理的密钥可用于加密或解密搜索服务上的静态数据,例如索引和同义词映射。

名称 类型 说明
accessCredentials

AzureActiveDirectoryApplicationCredentials

用于访问 Azure 密钥保管库的可选 Azure Active Directory 凭据。 如果改用托管标识,则不需要。

keyVaultKeyName

string

用于加密静态数据的 Azure 密钥保管库密钥的名称。

keyVaultKeyVersion

string

Azure 密钥保管库密钥的版本,用于加密静态数据。

keyVaultUri

string

Azure 密钥保管库的 URI(也称为 DNS 名称),其中包含用于加密静态数据的密钥。 URI 示例可能是 https://my-keyvault-name.vault.azure.net