zoukankan      html  css  js  c++  java
  • Elasticsearch from+size 超过10000结果解决方法

    方法一:

    如果需要搜索分页,可以通过from size组合来进行。from表示从第几行开始,size表示查询多少条文档。from默认为0,size默认为10,


    如果搜索size大于10000,需要设置index.max_result_window参数 


    注意:size的大小不能超过index.max_result_window这个参数的设置,默认为10,000。 

    PUT _settings
    {
        "index": {
            "max_result_window": "10000000"
        }
    }

    方式二:

    使用 scroll 代替,官方推荐方式。

     

    优缺点:

    方式一,当结果足够大的时候,会大大加大内存和CPU的消耗。使用非常方便。

    方式二: 当结果足够大的时候, scroll 性能更加。但是不灵活和 scroll_id 难管理问题存在。

    个人测试:当 结果足够大的时候 产生 scroll_id 性能也不低。如果只是一页页按照顺序,scroll是极好的,但是如果是无规则的翻页,那也是性能消耗极大的。

  • 相关阅读:
    MongoDB 基础API使用
    MongoDB -- JAVA基本API操作
    Docker数据管理
    Docker容器的简单使用
    Docker
    Centos 7.3 镜像制作
    Fuel部署OpenStack
    Fuel
    Ceph添加、删除osd及故障硬盘更换
    ceph常用命令
  • 原文地址:https://www.cnblogs.com/crystaltu/p/7640374.html
Copyright © 2011-2022 走看看