1

我想用 PHP Solarium 更新 Apache Solr 4.0 中的部分文档,而不是更新整个文档。我知道它在 Solr 中是可能的(Solr 中的文档),我只是找不到任何关于如何在 Solarium 中执行此操作的文档。所有现有的 Solarium 文档都指向我更新整个文档,这是有问题且不必要的。

4

1 回答 1

5

请记住,更新 Solr 文档中的字段要求您将所有相关字段设置为已存储 - Solr 将在后台检索并重新添加完整的文档,因此部分更新可能不会减少“问题”或“不必要”。一个好的索引策略是始终能够从原始源快速重新创建(和重新索引)您的文档,因为在索引时应用了 Solr 转换。

话虽如此,Solarium支持使用setFieldModifier.

$doc2 = $update->createDocument();
$doc2->setKey('id', 1);

$doc2->addField('price', '100');
$doc2->setFieldModifier('price', 'set');
于 2015-02-28T12:32:00.800 回答