Elasticsearch Java Api(六)--DeleteByQuery

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: 参考stackoverflow上的帖子,总结DeleteByQuery的java api一、安装插件要删除某个索引的一个type下的所有文档,相当于关系型数据库中的清空表操作。

参考stackoverflow上的帖子,总结DeleteByQuery的java api

一、安装插件

要删除某个索引的一个type下的所有文档,相当于关系型数据库中的清空表操作。查阅了一些资料可以通过Delete-by-Query插件删除,首先使用插件管理器安装Delete-by-Query插件:

sudo bin/plugin install delete-by-query

集群有多个节点的情况下,每个节点都需要安装并重启.
如果想要移除插件,可以执行以下命令:

sudo bin/plugin remove delete-by-query

二、导入jar包

导包:elasticsearch-2.3.3/plugins/delete-by-query/delete-by-query-2.3.3.jar加到工程路径中.

三、修改client的创建方式

Client client = TransportClient.builder()
                .settings(settings)
                .addPlugin(DeleteByQueryPlugin.class)
                .build()
                .addTransportAddress(new InetSocketTransportAddress(
                                    InetAddress.getByName("192.168.0.224"), 9300));

加了addPlugin这一行.

四、删除一个type下的所有文档

删除blog/article下的所有文档:

1.命令行方式

CURL -XDELETE "http://192.168.0.224:9200/blog/article/_query" -d '{
"query": {
    "match_all": {}
  }
}
'

2.java api

import org.elasticsearch.action.deletebyquery.DeleteByQueryAction;
import org.elasticsearch.action.deletebyquery.DeleteByQueryRequestBuilder;
import org.elasticsearch.action.deletebyquery.DeleteByQueryResponse;
import org.elasticsearch.plugin.deletebyquery.DeleteByQueryPlugin;

String deletebyquery = "{\"query\": {\"match_all\": {}}}";

DeleteByQueryResponse response =  new DeleteByQueryRequestBuilder(client,   
                                  DeleteByQueryAction.INSTANCE)
                                  .setIndices("blog")
                                  .setTypes("article")
                                  .setSource(deletebyquery)
                                  .execute()
                                  .actionGet();         
相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
6天前
|
Java 大数据 API
Java Stream API:现代集合处理与函数式编程
Java Stream API:现代集合处理与函数式编程
167 100
|
6天前
|
Java API 数据处理
Java Stream API:现代集合处理新方式
Java Stream API:现代集合处理新方式
159 101
|
1月前
|
存储 Java API
Java Stream API:现代数据处理之道
Java Stream API:现代数据处理之道
312 188
|
1月前
|
存储 Java API
Java Stream API:现代数据处理之道
Java Stream API:现代数据处理之道
227 92
|
3月前
|
缓存 安全 网络协议
借助Java,让Cloudflare API为你的网站管理加速
在数字化时代,网站与应用的稳定运行至关重要。Cloudflare API作为得力助手,可高效管理网站功能。本文深入探讨基于Java的Cloudflare API自动化操作,涵盖DNS管理、防火墙配置、缓存清理、SSL/TLS设置及Worker脚本部署等核心功能。同时,提供环境准备、认证配置、最佳实践(如请求重试与批量优化)、错误处理及安全增强措施的详细指导。通过这些步骤,构建稳定高效的自动化管理系统,助力网站稳健前行。
132 0
|
6天前
|
并行计算 Java 大数据
Java Stream API:现代数据处理之道
Java Stream API:现代数据处理之道
|
2月前
|
Oracle Java 关系型数据库
掌握Java Stream API:高效集合处理的利器
掌握Java Stream API:高效集合处理的利器
340 80
|
9天前
|
安全 Java API
使用 Java 构建强大的 REST API 的四个基本技巧
本文结合探险领域案例,分享Java构建REST API的四大核心策略:统一资源命名、版本控制与自动化文档、安全防护及标准化异常处理,助力开发者打造易用、可维护、安全可靠的稳健API服务。
69 2
|
2月前
|
安全 Java API
Java 8 Stream API:高效集合处理的利器
Java 8 Stream API:高效集合处理的利器
231 83
|
17天前
|
存储 数据可视化 Java
Java Stream API 的强大功能
Java Stream API 是 Java 8 引入的重要特性,它改变了集合数据的处理方式。通过声明式语法,开发者可以更简洁地进行过滤、映射、聚合等操作。Stream API 支持惰性求值和并行处理,提升了代码效率和可读性,是现代 Java 开发不可或缺的工具。
Java Stream API 的强大功能

热门文章

最新文章