Elasticsearch 的安装与使用(三): python操作Elasticsearch增删改查

本文详细介绍了如何使用Python连接并操作Elasticsearch进行数据的增删改查,包括插入单条和批量数据,删除指定ID或条件的数据,更新数据的特殊实现,以及各种复杂的查询方式如term、terms、match、multi_match等,并涉及到了排序、过滤和计数等操作。
摘要由CSDN通过智能技术生成

1.python链接ES:

	from elasticsearch import Elasticsearch
	self.es = Elasticsearch([{'host': "", 'port': }])

可以指定链接的ES的IP

2.ES插入数据:

2.1 插入单条数据
    for i in range(10):
        self.es.index(index="my-index", doc_type="test-type", body={"any": "data01", "timestamp": i})
2.2批量插入数据 [{},{}]
from elasticsearch import helpers
helpers.bulk(self.es, [{'_index':"my-index",'_type':'test-type'}, {}])

3.ES删除数据:

3.1 删除单条数据 指定id
self.es.delete(index='my-index', doc_type='test-type', id='jqcvIGsB6xO89rzf_sKP')
3.2 删除指定条件数据 批量删除
 # 根据指定条件删除  查询条件必须符合DLS格式
query = {

        # 查询语句
        "query": {
            'range': {'timestamp': {'lte': "2019-06-04T10:06:12.629748"}}
        }
    }
    self.es.delete_by_query(index='my-index', doc_type='test-type', body=query)

4.ES更新数据:

ES不支持更新操作,具体更新操作底层实现的原理是: 删除原来索引的数据,插入新索引的数据。每一次更新,es的_version字段内容会递增。

4.1 依据id更新单条数据:
# 更新单条数据
    doc = {
        'doc': {'test': "哈哈哈",
                'sdfs':"fdasfsdf"
                }

    }
    self.es.update(index='my-index', doc_type='test-type', id="tqdHIGsB6xO89rzfnsIL", body=doc)
4.2 依据条件,批量更新数据:
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值