【问题标题】:How to perform searching on large amounts of data efficiently with elastichsearch apis?如何使用 elasticsearch api 高效地在大量数据中执行搜索?
【发布时间】:2014-11-23 15:51:54
【问题描述】:

我想在 java 中使用 elastichsearch 进行索引和搜索机制。我的问题是,如果索引和搜索结果中有大量数据,我不知道该怎么办。

对于弹性搜索中的实时用户请求,大数据的正确搜索 api 是什么?或者您对此有什么想法?

感谢您的帮助/cmets。

【问题讨论】:

    标签: java search elasticsearch


    【解决方案1】:
    • 在索引时,您有一个 bulk API dedicated 来执行 一次调用即可完成大量操作。

    • 在搜索时,默认情况下您只检索 10 个结果。您可以通过设置from/size 参数来使用分页并浏览更大的结果集,您有 scroll API(此处的文档) 使用起来有点像带有 DB 的游标。

    关于搜索的实时性,请注意,结果不是立即可见。您可能需要等待 1 秒(refresh_interval 默认值)。您可以强制执行此 refresh 操作或降低 refresh_interval 参数值,但这样做代价高昂,在索引大量文档时应避免这样做。

    【讨论】:

    • 感谢您的评论。
    猜你喜欢
    • 2021-05-19
    • 1970-01-01
    • 2011-02-13
    • 2014-03-15
    • 2021-03-15
    • 1970-01-01
    • 2015-03-20
    • 2022-11-16
    • 1970-01-01
    相关资源
    最近更新 更多