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

在 Azure 认知搜索中将数据加载到搜索索引

本文介绍如何导入、刷新和管理预定义搜索索引中的内容。 在 Azure 认知搜索中,先创建搜索索引,接着的第二步是导入输入。 “导入数据”向导是一个例外,它在一个工作流中创建和加载索引。

搜索服务会导入并索引 JSON 中的文本,用于全文搜索或知识挖掘方案。 可从外部数据源中的字母数字字段、搜索方案中有用的元数据,或者通过技能组创建的丰富内容中获取文本内容。(技能可从图像和非结构化内容中提取或推断文本说明)。

索引数据后,索引的物理数据结构将被锁定。 有关可更改和不可更改的内容的指南,请参阅删除再重新生成索引

索引不是一个后台进程。 搜索服务将对索引和查询工作负载进行均衡,但是如果查询延迟太长,则可以添加容量,也可确定用于加载索引的较低查询活动的时间段。

加载文档

搜索服务接受符合索引架构的 JSON 文档。

你可自行准备这些文档,但是如果内容驻留在支持的数据源中,那么运行索引器或“导入数据”向导可自动完成文档检索、JSON 序列化和索引。

如果使用 Azure 门户,那么只能通过导入数据向导来加载索引。 该向导将创建对象。 如果要加载现有索引,将需要使用替代方法。

  1. 使用 Azure 帐户登录到 Azure 门户

  2. 查找搜索服务,并在“概述”页中,单击命令栏上的“导入数据”,以创建和填充搜索索引。

    Screenshot of the Import data command

  3. 单击下面的链接可查看工作流:快速入门:在 Azure 门户中创建 Azure 认知搜索索引

删除孤立文档

Azure 认知搜索支持文档级操作,因此你可单独查找、更新和删除特定文档。 以下示例说明了如何删除文档。 在搜索服务中,文档不相关,因此删除一个文档不会影响索引的其余部分。

  1. 确定哪个字段是文档键。 在门户中,可查看每个索引的字段。 文档键是字符串字段,并使用键图标表示,便于更容易识别。

  2. 检查文档键字段的值:search=*&$select=HotelId。 简单字符串非常简单,但是如果索引使用 base-64 编码的字段,或者搜索文档是从 parsingMode 设置生成的,则你可能正在使用不熟悉的值。

  3. 查找文档来验证文档 ID 的值,并在删除之前查看其内容。 在请求中指定键或文档 ID。 下面的示例演示了酒店示例索引的简单字符串,以及 cog-search-demo index 的 metadata_storage_path 键的 base-64 编码字符串。

    GET https://[service name].search.windows.net/indexes/hotel-sample-index/docs/1111?api-version=2020-06-30
    
    GET https://[service name].search.windows.net/indexes/cog-search-demo/docs/aHR0cHM6Ly9oZWlkaWJsb2JzdG9yYWdlMi5ibG9iLmNvcmUud2luZG93cy5uZXQvY29nLXNlYXJjaC1kZW1vL2d1dGhyaWUuanBn0?api-version=2020-06-30
    
  4. 删除文档,将其从搜索索引中删除。

    POST https://[service name].search.windows.net/indexes/hotels-sample-index/docs/index?api-version=2020-06-30
    Content-Type: application/json   
    api-key: [admin key] 
    {  
      "value": [  
        {  
          "@search.action": "delete",  
          "id": "1111"  
        }  
      ]  
    }
    

另请参阅