首页 > 其他分享 >Elasticsearch - scoll分批查询

Elasticsearch - scoll分批查询

时间:2024-04-26 09:56:18浏览次数:18  
标签:search scoll GET 分批 id Elasticsearch scroll 500

场景: 下载某一个索引中的一亿条数据

scoll搜索会在第一次搜索的时候,保存一个当时的视图快照,之后只会基于该旧的视图快照提供数据搜索,如果这个期间数据变更,是不会让用户看到的。

每次发送scroll请求,我们还需要指定一个scoll参数,指定一个时间窗口,每次搜索请求只要在这个时间窗口内能完成就可以了。

查询方式:
大致流程:通过scroll方式在1分钟内请求500条数据,得到数据同时会返回一个"_scroll_id",通过"GET /_search/scroll" + "_scroll_id"请求后续数据

# 通过scroll方式请求500条数据
GET /book/_search?scroll=1m
{
  "query": {
    "match_all": {}
  },
  "size": 500
}

GET /_search/scroll
{
  "scroll": "1m",
  "scroll_id": "FGluY2x1ZGVfY29udGV4dF91dWlkDXF1ZXJ5QW5kRmV0Y2gBFmIydUJSTTlTU25xMlZhWVFJNnUxZXcAAAAAAABYIhY1Ui1ReDRlTlQ5RzBQZXB0cUZTMUl3"
}

标签:search,scoll,GET,分批,id,Elasticsearch,scroll,500
From: https://www.cnblogs.com/l-zl/p/18159315

相关文章

  • Elasticsearch - Text字段排序
    插入数据DELETE/websitePUT/website{"mappings":{"properties":{"title":{"type":"text"}}}}PUT/website/_doc/1{"title":"firstclass"}PU......
  • JAVA程序连接es(Elasticsearch)会出现长时间不请求,突然请求会连接超时的问题
       可以使用这个方法试试设置长时间保持策略 伪代码 /***配置长连接保持策略**@return*/publicConnectionKeepAliveStrategyconnectionKeepAliveStrategy(){return(response,context)->{//Honor'keep......
  • Elasticsearch - filter过滤器
    通过query查询eg:查询desc中有"Facebook官网"并且价格在7-20之间的数据在只查询desc中有"Facebook官网"时,返回的_score分别是3.598,0.097GET/book/_search{"query":{"bool":{"must":[{"match":{......
  • Elasticsearch N-gram分词器介绍 (7)
    一.概述Ngram是一种基于统计语言模型的算法。Ngram基本思想是将文本里面的内容按照字节大小进行滑动窗口操作,形成长度是N的字节片段序列。此时每一个字节片段称为gram。对所有gram的出现频度进行统计,并且按照事先设定好的阈值进行过滤,形成关键gram列表,也就是这个文本的向量特......
  • 【Elasticsearch】在spring环境中 进行es的数据读取
    在Spring环境中进行Elasticsearch(ES)的数据读取,通常会利用SpringDataElasticsearch项目提供的功能。SpringDataElasticsearch提供了高度抽象的Repository接口,允许你以面向对象的方式操作Elasticsearch,而无需直接编写底层的HTTP请求或JSON解析代码。下面是一个简单的示例,演示如......
  • Elasticsearch 所有内置分词器介绍(6)
    一.概述Tokenizer分词器接收字符流(es的text类型),将其分解为单个term(通常是单个单词),然后输出标记流。分词器除了分解,还负责记录以下内容:1)记录每个单词(term)的顺序或位置(用于”phrase短语“和单词邻近性查询)2)term原始单词的开始和结束字符偏移量(使用......
  • docker-compose 安装部署ElasticSearch 和 Kibana
    项目需要搭建es环境,踩了一些坑,记录下首选还是通过docker搭建,而通过docker最佳的部署方式就是dockercompose1.docker-compose.ymlversion:"3.1"#服务配置services:elasticsearch:container_name:es01image:elasticsearch:8.12.2restart:unless-stopp......
  • docker安装elasticsearch和kibana
    来源:https://www.cnblogs.com/baoshu/p/16128127.html安装目标使用docker安装elasticsearch和kibana,版本均为7.17.1安装es1.dockerpull#去dockerhub看具体版本,这里用7.17.1Copydockerpullelasticsearch:7.17.1dockerpullkibana:7.17.12.临时安装生成文件#Copy......
  • ElasticSearch 7.17.20本地源码调试
    目录使用本地安装gradle下载相关依赖本地编译本地调试使用本地安装gradle下载相关依赖在gradle安装目录下的init.d目录中,创建初始化脚本init.gradle,添加如下脚本,将其中的maven仓库源全部换成国内镜像allprojects{repositories{defREPOSITORY_URL='http://m......
  • SpringCloud(七.7)ES(elasticsearch)-- 实战练习
    demo地址:链接:https://pan.baidu.com/s/16c1mMcQv7bF3Fcz2X_PE7A  提取码:msvy库表tb_hotel.sql: 链接:https://pan.baidu.com/s/1wVdh-fZoyeNbLUkyQYCD5g  提取码:3t4y 练习目标一:实现酒店搜索功能,完成关键字搜索和分页功能 如图,点击搜索按钮,我们发现它调用的是hot......