elasticsearch UpdateByQuery的使用
来源:互联网 发布:isis软件下载 编辑:程序博客网 时间:2024/05/21 15:02
上一篇发了解决elasticsearch UpdateByQuery的问题,后来遇到好多小伙伴问我,为什么他使用不了UpdateByQuery,遂科普下。
在于你可能没有引入reindex包:
<dependency> <groupId>org.elasticsearch.module</groupId> <artifactId>reindex</artifactId> <version>2.4.3</version></dependency>
使用方法也很简单,举个栗子,这个栗子的作用是把所有满足条件的session_id记录都使用对应script更新:
public static void updateByQuery(String index, String type, Set<Map<String, Object>> docs, String scriptStr) { if (docs == null || docs.isEmpty()){ LOG.info("No data can updateByQuery to es! index:{}.", index); return; } UpdateByQueryRequestBuilder ubqrb = UpdateByQueryAction.INSTANCE.newRequestBuilder(client); for (Map<String, Object> doc : docs) { if (doc==null || doc.isEmpty()){ return; } Script script = new Script(scriptStr); BulkIndexByScrollResponse scrollResponse = ubqrb.source(index) .script(script) .filter(QueryBuilders.termQuery("session_id", doc.get("orgin_session_id"))) .abortOnVersionConflict(false).get(); for (BulkItemResponse.Failure failure : scrollResponse.getIndexingFailures()) { LOG.error(failure.getMessage()); } } }
阅读全文
0 0
- elasticsearch UpdateByQuery的使用
- PHP ElasticSearch的使用
- ElasticSearch的使用
- Elasticsearch的script使用
- Elasticsearch的基本使用
- elasticsearch sql的使用
- PHP ElasticSearch的使用
- elasticsearch的使用
- ElasticSearch查询的使用
- Python-ElasticSearch的使用
- Elasticsearch的使用场景
- ElasticSearch的使用
- 使用Elasticsearch的java api,操作elasticsearch
- es UpdateByQuery 出现 VersionConflictEngineException
- elasticsearch的hadoop插件使用
- 使用elasticsearch的帮助类
- elasticsearch 的安装和使用
- ElasticSearch 和packetBeat 的使用
- Spring ERROR
- Photoshop笔记
- 深度学习 卷积神经网络学习笔记1
- 【LeetCode】69、int sqrt(int x).
- html学习15-网页联系-超链接-内部链接
- elasticsearch UpdateByQuery的使用
- PhpStorm集成PSR2代码自动检查
- docker简单操作
- 设计模式之装饰者模式
- StringUtil工具类
- 微信小程序tabBar
- 学习STM32F429时钟系统笔记
- 机器学习新星:Scala 优于 Java 的五大理由!
- hdu 2066 一个人的旅行