ElasticSearch的一些删除用法笔记

前面关于es的文章基本上都是添加,修改,更新操作,删除的例子仅仅有根据id删除单条数据的。但作为一个重度使用es的用户,我们肯定得了解所有相关删除操作的命令,才能更加方便的使用和维护es。

通常情况下,删除操作是非常敏感的,这一点不论在关系型数据库,还是nosql数据库都是同样的道理。在es里面也是如此,虽然es大部分时候都是读多写少的系统。

在es里面常用的删除需求,通常如下:

(1)根据某个主键id删除单条数据

(2)根据某个查询条件删除一批数据

(3)删除某个type的数据

(4)删除某个index的数据

(5)清空所有集群的索引数据

本片的例子中,均使用Java Api来完成,其他的方式请参考ES官网文档:

下面来依次看下上面的几个不同方式的删除例子:

(1)根据主键id删除

(2)根据某个查询条件删除一批数据,这个删除非常灵活,灵活的同时,缺点也是 非常明显的,如果操作不当会删除大批数据,所以es官网将其作为一个es的插件功能,非必须情况下,不建议使用此插件(delete-by-query),想使用这个功能,需要提前在服务器集群上安装这个插件,每台机器都要装,装完之后还需要滚动重启,否则不生效,安装方式非常简单,执行下面的命令即可:

卸载命令:

如果想要在Java中使用,还需要引入下面的pom

此外,在初始化es的client的对象时,需要将插件加入到初始化的方法中:

最后我们看下,如何删除指定查询条件的代码:

(3)删除某个type的数据,其实也用到了delete-by-query的插件,代码如下:

(4)删除某个index的数据,代码如下 :

(5)清空整个集群的索引数据,这个操作非常危险,需要注意

总结:

删除有风险,操作需谨慎

删除有风险,操作需谨慎

删除有风险,操作需谨慎

原文发布于微信公众号 - 我是攻城师(woshigcs)

原文发表时间:2017-05-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏青玉伏案

OracleDBA之数据库管理

  以下这些东西是我的麦库上存的当时学Oracle的学习笔记今天拿出来和大家分享一下,转载请注明出处,下面用的Oracle的版本是10g,用的时WinServe...

2089
来自专栏乐沙弥的世界

Oracle实例和Oracle数据库(Oracle体系结构)

--==========================================

1332
来自专栏我和PYTHON有个约会

数据库最大连接数量

在数据库操作过程中,经常会遇到一些非业务逻辑错误,这样的错误要求开发人员对于自己正在操作的硬件软件乃至网络都有一定的了解,这里说说关于数据库最大连接数量的那点事...

1152
来自专栏张戈的专栏

zabbix agentd客户端插件Shell一键自动安装脚本

这次生产环境上线了多台 Linux 服务器,需要全部纳入 Zabbix 监控范畴,一台一台的去装 Zabbix Agentd 插件那就太苦逼了,所幸 Zabbi...

3445
来自专栏云计算教程系列

# 如何在Ubuntu 14.04上使用Bottle Micro Framework部署Python Web应用程序 ##

由于其灵活性和高级功能,Python是一种优秀的Web编程语言。Web框架可以使编程Web应用程序更加简单,因为它们连接了强大的Web界面所需的许多组件。

1821
来自专栏JAVA同学会

MongoDB之分片集群(Sharding)

  分片(sharding)是一个通过多台机器分配数据的方法。MongoDB使用分片支持大数据集和高吞吐量的操作。大数据集和高吞吐量的数据库系统挑战着单一服务的...

3122
来自专栏数据和云

Oracle公共云中的MySQL InnoDB集群

题记:本文我们将引导大家完成在Oracle公共云(OPC)中创建3节点InnoDB集群的整个过程,包括从OPC IaaS资源的初始配置,到InnoDB集群的创建...

3335
来自专栏Laoqi's Linux运维专列

MySQL调优

4519
来自专栏PHP在线

MySQL · 引擎特性 · MySQL内核对读写分离的支持

读写分离的场景应用 随着业务增长,数据越来越大,用户对数据的读取需求也随之越来越多,比如各种AP操作,都需要把数据从数据库中读取出来,用户可以通过开通多个只读实...

1574
来自专栏代码世界

MYSQL之库操作

一、系统数据库 information_schema :虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息、列信息、权限信息、字符信息等 my...

3587

扫码关注云+社区

领取腾讯云代金券