首页 > 解决方案 > 如何将 Azure Blob 自定义元数据字段索引到 Azure 搜索

问题描述

我试图将 blob 内容索引到 Azure 搜索。我通过 blob 索引器将 blob 内容添加到搜索索引中。

我正在使用 MongoDB 来存储上传的文件信息以及 blob 路径。我们必须向存储在 MongoDB 中的文件添加一些标签。现在我想将这些标签与文件内容一起添加到 Azure 搜索该文件中。

我面临的问题是,

问题1:保持MongoDB记录和blob索引器之间的唯一性(搜索关键字字段)。最初,我想使用来自 blob 索引器的 metadata_storage_path 和存储在 MongoDB 中的 base64 编码的 blob 路径。但问题是它从不匹配来自我的 node.js 的 metadata_storage_path 和 base64 编码的 blob 路径。

问题 2:为了解决问题 1,我采用了另一种方法,将我的 MongoDB 文件 ID(FID)作为自定义元数据字段存储到 Blob 中,以获取搜索索引和 mongoDB 记录的唯一性(搜索键字段)。这里的问题是如何将自定义元数据字段映射到关键字段?我无法索引 blob 自定义元数据字段。

在这两种情况下,我都无法达到预期的结果。如何实现 MongoDB 和 Azure blob 之间的搜索索引键字段?

标签: mongodbazureazure-cognitive-searchazure-blob-storage

解决方案


您可以使用 base64 编码的 blob 路径作为文档键,您可以通过使用 base64 字段映射在两个索引器中获取它。检查https://docs.microsoft.com/en-us/azure/search/search-indexer-field-mappings#base64EncodeFunction以获取与您的 node.js 编码函数匹配的所有选项。


推荐阅读