from elasticsearch import Elasticsearch
from elasticsearch import helpers
# elasticsearch集群服务器的地址
es_servers = [
'10.123.179.102:9200','10.123.179.103:9200','10.123.179.104:9200','10.123.179.105:9200'
]
# 创建elasticsearch客户端
es = Elasticsearch(
es_servers,
# 启动前嗅探es集群服务器
sniff_on_start=True,
# es集群服务器结点连接异常时是否刷新es节点信息
sniff_on_connection_fail=True,
# 每60秒刷新节点信息
sniffer_timeout=60,
#超时时间
timeout=10000,
#重试次数
max_retries=10,
#超时时重试
retry_on_timeout=True
)
#更新数据集
data = [{
"_op_type": 'update',
"_index": 'test_index',
"_type": '_doc',
"_id": 11,
"doc_as_upsert":True,
"doc": {"newkey": 'newvalue'}
},{
"_op_type": 'update',
"_index": 'test_index',
"_type": '_doc',
"_id": 12,
"doc_as_upsert":True,
"doc": {"newkey": 'newvalue'}
},{
"_op_type": 'update',
"_index": 'test_index',
"_type": '_doc',
"_id": 13,
"doc_as_upsert":True,
"doc": {"newkey": 'newvalue'}
},{
"_op_type": 'update',
"_index": 'test_index',
"_type": '_doc',
"_id": 14,
"doc_as_upsert":True,
"doc": {"newkey": 'newvalue'}
}
]
helpers.bulk(es, data)
Python操作es批量upsert数据
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 参考资料 Elasticsearch API Documentation Global options 一、Ign...
- 接第7节 5、删除文档&索引 删除类型方法或路径参数删除文档DELETE customer/external/1删...
- 注意点:现在kibana/elasticsearch最新版本为7.0,与5.2.0的语法有出入,需要注意 语法,自...
- 内容来自《ES 权威指南》 [TOC] 一、索引文档 文档通过 index API 被索引--使数据可以被存储和搜...
- 一. es导入导出测试 1. 创建snapshot文件夹 mkdir /mnt/ssd1 chown -R es:...