Solr到insert a document所需的XML格式与用于retrieve a document的格式不同。更新一个字段的值的简单用例需要重写整个文档。
唯一的区别是数据类型反映在查询格式中,例如<int name="foo">5</int>,但提交格式使用<field>标记。
在仍然使用HTTP + XML的同时,是否有一些选择可以避免更改所有这些标记的跑腿工作?
换句话说,我希望Solr要么在HTTP POST主体中接受<int>标记,要么在GET主体中返回<field>标记。(在响应中省略报头也很好。)
发布于 2012-04-30 15:10:06
我猜您主要关心的是模拟就地更新。
XSLT是否足够强大,可以将Solr的XML响应转换为与Solr的更新格式更兼容的XML格式?有一个XSLT response writer可以将Solr的响应重写为其他格式。对不起,我对XSLT还不够熟悉。
JSON更新器和响应写入器(同样适用于CSV和)使用彼此一致的语法。您愿意使用中间格式的JSON/CSV吗?
关于Solr的响应编写器 (XML、XSLT、JSON、CSV和其他):http://lucidworks.lucidimagination.com/display/solr/Response+Writers
关于更新JSON:http://wiki.apache.org/solr/UpdateJSON
关于CSV的更新:http://wiki.apache.org/solr/UpdateCSV
https://stackoverflow.com/questions/10379321
复制相似问题