我需要索引Solr中自定义应用程序的数据。自定义应用程序将元数据存储在Oracle RDBMS中,并将文档(PDF,MS Word等)存储在文件存储中。在数据库中的元数据引用文件存储中的物理文档(PDF)的意义上,这两者是链接的。
我能够毫无问题地从RDBMS索引元数据。现在我想用一个附加字段来更新索引文档,在这个字段中我可以存储来自PDF的已解析内容。
我考虑过并尝试了以下内容 1.使用Update RequestHandler尝试使用更新索引文档。这不起作用,从RDBMS索引的原始文档被覆盖。 2.使用SolrJ进行原子更新,但我不确定这对于像这样的事情是否是一个好方法
之前是否有人遇到此问题以及推荐的方法是什么?
答案 0 :(得分:0)
您可以更新文档,但要求您知道现有文档的ID。例如:
{
"id": "5",
"parsed_content":{"set": "long text field with parsed content"}
}
不要只是说"parsed_content":"something"
,而是必须将值包装在"parsed_content":{"set":"something"}
中以触发将其添加到现有文档中。
有关如何使用多值字段等的文档,请参阅https://wiki.apache.org/solr/UpdateXmlMessages#Optional_attributes_for_.22field.22。