登录
首页 >  Golang >  Go问答

同步删除文档至Elasticsearch

来源:stackoverflow

时间:2024-03-14 09:45:29 223浏览 收藏

Golang不知道大家是否熟悉?今天我将给大家介绍《同步删除文档至Elasticsearch》,这篇文章主要会讲到等等知识点,如果你在看完本篇文章后,有更好的建议或者发现哪里有问题,希望大家都能积极评论指出,谢谢!希望我们能一起加油进步!

问题内容

我正在使用 olivere/elastic 在 go 中使用 elasticsearch。 这是我的代码:

// (1) delete document 
_, err := e.client.Delete().Index(index).Type("entity").
    Id(id).Do(e.ctx)

if err != nil {
    fmt.Println(err.Error())
}

// (2) get all documents 
result, err := e.client.Search().Index(index).From(1).Size(100).Do(e.ctx)
if err != nil {
    log.Println(err)
}

fmt.Println(result.TotalHits())

// (3) wait
time.Sleep(3 * time.Second)

// (4) get all documents
result, err = e.client.Search().Index(index).From(1).Size(100).Do(e.ctx)
if err != nil {
    log.Println(err)
}

fmt.Println(result.TotalHits())

我在这里:

  • 删除文档
  • 从集合中获取所有文档
  • 等待 3 秒
  • 从集合中获取相同的文档

现在,在步骤 (2) 中,我比步骤 (4) 多了一份文档。 看起来elastic中删除文档有一些延迟,我正在寻找同步删除文档的方法。


解决方案


_, err := e.client.Delete().Index(index).Type("entity").
    Id(id).Refresh("true").Do(e.ctx)

刷新(“true”)

今天关于《同步删除文档至Elasticsearch》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>