我有两个文件(.csv),我想合并它。有可能吗?
这是一个例子
文档1:
<doc>
<arr name="id">
<long>200000000</long>
</arr>
<arr name="Name">
<str>Sample</str>
</arr>
<arr name="first_name">
<str>Sally</str>
</arr>
</doc>
文件2:
<doc>
<arr name="id">
<long>200000000</long>
</arr>
<arr name="Street">
<str>Any Street</str>
</arr>
<arr name="State">
<str>Any State</str>
</arr>
</doc>
它应该是这样的:
<doc>
<arr name="id">
<long>200000000</long>
</arr>
<arr name="Name">
<str>Sample</str>
</arr>
<arr name="first_name">
<str>Sally</str>
</arr>
<arr name="Street">
<str>Any Street</str>
</arr>
<arr name="State">
<str>Any State</str>
</arr>
</doc>
我如何在Solr中执行此操作?我应该创建第二个核心并以某种方式合并它吗? 或者我该怎么办?
答案 0 :(得分:0)
是的,你可以这样做:
使用partial updates更新该文档,并附加其他数据:
{"id":"200000000",
"Street":{"add":["Any Street"]},
"State":{"add":["Any State"]}
}
只需要一个要求:所有字段必须存储(存储=&#34; true&#34;)或docValues(docValues =&#34; true&#34;)
答案 1 :(得分:0)
如果可能,您应该自己合并这些csv文件。这是一个常见问题,您可以 - 例如 - 使用Unix join utility。
如果您必须在Solr端进行此操作并且无法将其中一个文件转换为原子更新,则可以留意SOLR-9530,但尚未发布。