2

我正在使用索引器将数据从我的 SQL 数据库同步到 Azure 搜索服务。我的 SQL 视图中有一个字段,其中包含 XML 数据。Column 包含一个字符串列表。我的 Azure 搜索服务索引中的相应字段集合(Edm.String)。在检查一些文档时,我发现 Indexer 不会将 Xml(SQL) 更改为 Collection(Azure Search)。关于如何从 Xml 数据创建集合有什么解决方法吗?

ps 我正在从视图中提取数据,因此如果需要,我可以将 Xml 更改为 JSON。

4

1 回答 1

3

2016 年 10 月 17 日更新:如果数据表示 JSON 字符串数组, Azure 搜索现在会自动将来自数据库的字符串转换为 Collection(Edm.String) 字段:例如,["blue", "white", "red"]

旧响应:时机很好,我们刚刚添加了一个新的“字段映射”功能,允许您执行此操作。此功能将在下周初的某个时间部署。当它在所有数据中心推出时,我会在这个线程上发表评论。

要使用它,您确实需要使用 JSON。确保您的源列包含 JSON 数组,例如 ["hello" "world"]。然后,更新您的索引器定义以包含新的 fieldMappings 属性:

"fieldMappings" : [ { "sourceFieldName" : "YOUR_SOURCE_FIELD", "targetFieldName" : "YOUR_TARGET_FIELD", "mappingFunction" : { "name" : "jsonArrayToStringCollection" } } ]

注意:您需要使用 API 版本 2015-02-28-Preview 来添加 fieldMappings。

HTH,尤金

于 2015-04-17T01:20:14.147 回答