如何使用 Azure 认知搜索搜索本地数据库?

How to use Azure Cognitive Search for local database?

我们正在尝试利用 Azure 认知搜索在我们的本地数据库上启用搜索功能。我们有一个在 .Net 中创建的解决方案来建立与本地数据源的连接。本地数据源可能是 SQL 服务器、NOSQL、访问或 Excel 数据。

例如,我们在 excel 中有 200 万行。我们想读取数据并在这些记录中搜索特定值。

如何利用 Azure 认知搜索来实现相同的功能?

据我所知,Azure 认知搜索无法搜索本地数据源。它只能搜索在认知搜索帐户中创建的索引中的数据。

您需要以某种方式将此数据放入索引中。一种解决方案是将 Excel 文件上传到 Azure Blob 存储并使用它创建 Data Source。然后,您将创建一个 Index 和一个 Indexer,它们会将此数据源连接到索引并使用此数据源中的数据填充索引。

为了进一步详细说明,假设您的 Excel 文件有 4 列 - Id、FirstName、LastName 和 EmailAddress。这是你会做的:

  1. 创建一个索引 - 首先你要创建一个索引。索引是 Azure 认知搜索中的一个实体,其中包含要搜索的数据。在您的情况下,您将创建一个包含 4 个字段的索引,这些字段映射到 Excel 文件中的列。
  2. 在 Blob 存储中上传文件 - 接下来,您将在 Azure Blob 存储中上传此 Excel 文件。在上传和上传该 CSV 文件之前,您可能需要将该文件转换为 CSV 格式。
  3. 创建数据源 - 接下来您将在认知搜索帐户中创建数据源。顾名思义,数据源是保存原始数据的实体。您将创建一个 Blob Storage 类型的数据源。
  4. 创建索引器 - 考虑到 objective 是从数据源读取数据并将其放入索引,您将创建一个索引器。将索引器视为索引和数据源之间的桥梁,它从数据源读取数据并填充索引。
  5. 运行 索引器 - 最后一步是 运行 索引器。如果一切配置正确,一旦索引器 运行s 您应该很快就会在索引中看到数据。

如果您的 Excel 文件中的数据没有改变,其他选项可能是仅从 Excel 文件中读取数据并手动填充索引。为此,您可以使用认知搜索 SDK。