elasticsearch中大数据查找

elasticsearch 中,怎么样一次返回300w条数据(不修改最大返回值的情况下)

在Elasticsearch中,一次返回300w条数据可能会导致内存问题和性能问题,因此不建议一次性返回这么多数据。不过,如果你非常需要一次性返回这么多数据,可以尝试以下方法:

使用scroll API:通过scroll API,Elasticsearch可以在后台持续地扫描索引,并返回结果集的一个快照。这个快照可以被多次检索,直到它被消耗完或者过期。这个方法可以避免一次性返回大量的数据,同时也可以控制返回的数据量。

使用search_after参数:search_after参数可以指定Elasticsearch从哪个结果集之后开始返回数据,这样可以避免一次性返回大量的数据。

分页查询:通过分页查询,可以控制每次返回的数据量,从而避免一次性返回大量的数据。

总之,为了保证Elasticsearch的性能和稳定性,不建议一次性返回大量的数据。如果需要查询大量数据,可以考虑使用上述方法,或者对数据进行分片,从而减少每次需要查询的数据量。

  • 帮你找了个相似的问题, 你可以看下: https://ask.csdn.net/questions/895819
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:Elasticsearch安装与使用教程
  • 除此之外, 这篇博客: Elasticsearch大量查询和深度分页中的 相关连接 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • elasticserach详解长文:https://www.cnblogs.com/Leo_wl/p/16006513.html#_label0
    深入分片:https://www.jianshu.com/p/cc06f9adbe82
    mysql与es对比:https://blog.csdn.net/adparking/article/details/109773492
    ES如何正确深度分页:https://www.cnblogs.com/you-you-111/p/5849945.html
    es线程池:https://www.iteye.com/blog/rock

  • 您还可以看一下 姚攀老师的Elasticsearch搜索研发实战课程课程中的 1.1 课程简介小节, 巩固相关知识点