Solr 4 beta 已经发布,GA 版本即将推出。部分文档更新已经存在了一段时间,如下所述:http: //solr.pl/en/2012/07/09/solr-4-0-partial-documents-update/
但是,我还没有弄清楚如何使用 solrj api 来做到这一点。
有谁知道 solrj 是否可行?或者 solrj 只是没有跟上这个功能?
更新:正如我在邮件列表中描述的(请参阅此处的回复),我发现在 solrj api 中,SolrInputField 的值可以是一个映射 - 它不必是一个简单的标量值。如果是地图,solrj 会update
在字段的 xml 元素中添加一个附加属性。例如,这段代码:
SolrInputDocument doc = new SolrInputDocument();
Map<String, String> partialUpdate = new HashMap<String, String>();
partialUpdate.put("set", "foo");
doc.addField("id", "test_123");
doc.addField("description", partialUpdate);
产生这个文件:
<doc boost="1.0">
<field name="id">test_123</field>
<field name="description" update="set">foo</field>
</doc>
在这个例子中,我为这个附加属性使用了“set”这个词,但它不起作用。Solr 没有像我预期的那样更新该字段。根据此链接: http ://solr.pl/en/2012/07/09/solr-4-0-partial-documents-update/ 有效值为“设置”和“添加”。
任何的想法?