首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多搜索在不同的运行中给出不同的总命中率。

多搜索在不同的运行中给出不同的总命中率。
EN

Stack Overflow用户
提问于 2020-01-02 20:42:19
回答 1查看 41关注 0票数 1

我使用的是Elasticsearch 6.8和python 3。

我在我的笔记本上运行,有一个节点,没有线程/进程插入/更新/删除文档到索引,而我运行多搜索

我正在运行以下多个搜索命令:

代码语言:javascript
复制
    es = Elasticsearch()
    search_arr = []
    # search-1
    search_arr.append({'index': 'test1', 'type': 'type1'})
    search_arr.append({"query": {"term": {"confidence": "1"}}})

    # search-2
    search_arr.append({'index': 'test1', 'type': 'type1'})
    search_arr.append({"query": {"match_all": {}}, 'from': 0, 'size': 2})

    request = ''
    for each in search_arr:
        request += '%s \n' % json.dumps(each)

    res = es.msearch(body=request)
    print("First Query, num of results = ", res['responses'][0]['hits']['total'])
    print("Second Query, num of results = ", res['responses'][1]['hits']['total'])

每次运行这段代码时,我都会得到不同的结果(正如我前面写的,没有插入/删除/更新文档的进程)

为什么每次我都得到不同的结果?

我需要做些什么才能修复它并获得一致的结果?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-03 06:49:15

我找到了问题的原因。

在第一次添加新数据之后,我需要添加refresh = True

(我增加了数千个新文档,并在使用了多个搜索之后)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59569746

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档