如何使用pysolr对solr进行原子更新?

如何使用pysolr对solr进行原子更新?,solr,pysolr,Solr,Pysolr,我找不到关于如何使用pysolr对solr进行更新的合适文档。您当前无法使用pysolr对solr进行原子更新。这是有吸引力的: 但它还没有被合并。最后一条评论是在不到一个月前,如果您感兴趣,我会对其进行评论-或者如果您觉得合适的话,尝试自己合并代码。使用相同的唯一Solr ID并像往常一样编写(使用Solr.add)将覆盖/更新文档。 因此,您可以只编写新文档,将唯一ID设置为与要更新的旧文档匹配,或者您可以拉取旧文档,进行更改并使用更新的文档进行新的写入;由于其ID相同,您仍将被覆盖/更新

我找不到关于如何使用pysolr对solr进行更新的合适文档。

您当前无法使用pysolr对solr进行原子更新。这是有吸引力的:


但它还没有被合并。最后一条评论是在不到一个月前,如果您感兴趣,我会对其进行评论-或者如果您觉得合适的话,尝试自己合并代码。

使用相同的唯一Solr ID并像往常一样编写(使用Solr.add)将覆盖/更新文档。 因此,您可以只编写新文档,将唯一ID设置为与要更新的旧文档匹配,或者您可以拉取旧文档,进行更改并使用更新的文档进行新的写入;由于其ID相同,您仍将被覆盖/更新。

自2014年11月起,pysolr支持该ID。下面是一个简单的例子:

url_solr = '''http://my.solr.com:8983/solr/mycore'''
solr = pysolr.Solr(url_solr)

doc = {'id':'rabid bananas', 'comment':'now half off!'}
solr.add([doc], fieldUpdates={'comment':'set'})
# the id 'rabid bananas' now has an updated comment

你能澄清一下你所说的原子更新是什么意思吗?我们能以同样的方式增加一个变量吗?