首页 > 其他分享 >Elasticsearch中删除数据

Elasticsearch中删除数据

时间:2023-01-13 23:36:41浏览次数:52  
标签:删除 doc twitter 索引 文档 Elasticsearch 数据 id


删除文档

想找个删除的api,找不到能用的,只能自己去翻译了。。。。。。
英文原文出自:​​https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-delete.html​

delete API

允许从基于其id的特定索引中删除一个JSON文档,下面的示例从twitter中删除类型为_doc的JSON文档,其id为1:

DELETE /twitter/_doc/1

上述删除操作的结果为:

{
"_shards" : {
"total" : 2,
"failed" : 0,
"successful" : 2
},
"_index" : "twitter",
"_type" : "_doc",
"_id" : "1",
"_version" : 2,
"_primary_term": 1,
"_seq_no": 5,
"result": "deleted"
}

Versioning

索引的每个文档都是版本化的。在删除文档时,可以指定版本,以确保正在删除的相关文档实际上正在被删除,同时它也没有改变。每个在文档上执行的写操作,包括删除,都会使其版本增加。删除文档的版本号可以在删除后短时间内可用,以控制并发操作。删除文档的版本仍然可用的时间长度由索引决定。gc_deletes索引设置和默认设置为60秒。

Routing

当索引使用控制路由的能力时,为了删除文档,也应该提供路由值。例如:

DELETE /twitter/_doc/1?routing=kimchy

上面的消息将会删除一条id为1的tweet,但是会基于用户发送。注意,在没有正确路由的情况下发出删除,将导致文档不被删除。
当将_routing映射设置为required且没有指定路由值时,delete api将抛出一个RoutingMissingException并拒绝该请求。

Automatic index creation

如果使用外部版本变体,删除操作会自动创建索引,如果没有之前创建(create index API手动创建一个索引),并自动创建一个动态类型映射为特定类型,如果没有之前创建(查看手动映射API创建类型映射)。

Distributed

删除操作被散列到一个特定的shard id中,然后被重定向到该id组内的主分片,并在该id组中复制(如果需要)到shard副本。

Wait For Active Shards

在删除请求时,您可以设置wait_for_active_shards参数,在开始处理删除请求之前,需要使用最少的shard副本。有关详细信息和使用示例,请参阅此处。

Refresh

在搜索时,可以看到该请求所做的更改。看到了什么?刷新。

Timeout

在执行删除操作时,指定执行删除操作的主碎片可能无法使用。一些原因可能是,主要碎片目前正在从商店中恢复,或者正在进行重新安置。默认情况下,delete操作在失败和响应一个错误前将在主分片上等待1分钟。timeout参数可用于显式指定等待的时间。这里有一个设置为5分钟的例子:

DELETE /twitter/_doc/1?timeout=5m
eg:自己的例子:

在policy_document中删除类型为policy_document的,id=e_87431dc564341cf2cc1af8d2877476df的文档

DELETE policy_document/policy_document/e_87431dc564341cf2cc1af8d2877476df

返回结果:

{
"took": 0,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 0,
"max_score": null,
"hits": []
}
}


标签:删除,doc,twitter,索引,文档,Elasticsearch,数据,id
From: https://blog.51cto.com/u_15936016/6006782

相关文章

  • python教程2--数据类型、变量、 常量、 除法
    1.数据类型1.1整数Python可以处理任意大小的整数,包括负整数。Java中的整数是有范围限制的,比如int的范围限制在-2147483648-2147483647之间。1.2浮点数浮点数也就是小数,如果......
  • Java基础03 数据类型
    数据类型强类型语言:严格规范使用的语言Java,c,c++都是,安全性强,速度相对较慢弱类型语言:不怎么严格规范使用的语言(但一定也是在规则允许下)JavaScript等等,安全......
  • Java基础04 数据类型拓展与面试题讲解
    数据拓展与面试题讲解数据拓展整数拓展浮点数拓展字符拓展布尔值拓展importstaticjava.lang.System.*;publicclasstest04{publicstaticvoidmain(St......
  • mysql查看数据库和表使用空间
    –1.切换USEinformation_schema;–2.查看数据库使用大小SELECTconcat(round(sum(data_length/1024/1024),2),'MB')ASDATAFROMTABLE......
  • ClickHouse系列--Mutations操作:数据的删除和修改
    clickhouse提供了update和delete的删除能力,但是和常规的例如mysql,redis这种立即见效的能力不一样。在clickhouse中这种操作称为mutation操作。1.mutation操作有3个特点:1.Mut......
  • fineReport切换数据源
    fineReport切换数据源:1.配置数据连接2.报表内选中......
  • Elasticsearch 使用中文分词
    本文演示了如何使用IKAnalysis插件来实现在Elasticsearch中的中文分词功能。使用中文分词在“SpringBoot应用企业级博客系统”课程中(​​http://coding.imooc.com/clas......
  • 天空卫士参与编写的《数据安全治理实践指南(2.0)》正式发布
    2023年1月5日,由中国信息通信研究院(以下简称“中国信通院”)、中国通信标准化协会指导,中国通信标准化协会大数据技术标准推进委员会主办,数据安全推进计划承办的第二届数据安全......
  • 性能测试|JMeter连接数据库
    jmeter连接mysql数据库总体步骤如下:下载mysql的jar包放入到jmeter的lib下,然后重启jmeter配置JDBCConnectionConfiguration配置JDBCRequest在请求中引用查询到的结果变量,......
  • 刷刷刷 Day 11 | 1047. 删除字符串中的所有相邻重复项
    1047.删除字符串中的所有相邻重复项LeetCode题目要求给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在S上反复执行重复项删除......