这篇文章给大家聊聊关于深入解析Elasticsearch批量操作技巧与应用,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
Solution:
我需要解决两个问题:
查询多个Index的内容,然后将符合条件的数据写入新的Index:
这个问题比较简单。 elasticsearch的helpers模块提供了一个完美的方法来做到这一点:reindex()
elasticsearch.helpers.reindex(client,source_index,target_index,query=None,target_client=None,chunk_size=500,scroll=u"5m",scan_kwargs={},bulk_kwargs={}) 该方法的参数提供了source_index( )可以是List)、target_index、query、scroll_size和滚动存储时间,所以直接运行就可以了。
批量更新现有Index中的所有数据,为每个文档添加一个字段并赋值:
官方文档中的api签名如下:
elasticsearch.helpers.bulk(客户端,操作,stats_only=False,** kwargs)
我一直不明白参数动作是什么类型。我认为它是函数类行的参数。然后看源码,发现其实是一个List,而且是要操作的文档的集合。官方文档显示必须满足这个要求。看起来像search() 返回的结果格式: { "_index": "index-name", "_type": "document", "_id": 42, "_parent": 5, "_ttl": "1d" , "_source": { "title": "你好世界!", "body": "." }}
但他也说:Thebulk()
api 接受索引、创建、删除和更新操作。使用_op_type字段指定操作(_op_type默认为index):
{ "_op_type": "删除", "_index": "索引名称", "_type": "文档", "_id": 42,}{ "_op_type": "更新", "_index": "索引- name", "_type": "document", "_id": 42, "doc": {"question": "生命、宇宙和一切。"}}
我将"_op_type":"update" 添加到我的数据中,然后运行时不断出现错误:
TransportError(400, u"action_request_validation_exception",u"验证失败: 1: 脚本或文档丢失
直到我尝试删除"_op_type"字段,它终于成功了。下面是我的代码:
def queryInES(esinstance):
search_body={"query":{"match_all":{}}}
page=esinstance.search(index="my_index", body=search_body, search_type="scan", doc_type="Tweet",scroll="5s", size=1000)
sid=页面["_scroll_id"]
滚动大小=页面["点击数"]["点击数"]
而(scroll_size0):
pg=es.scroll(scroll_id=sid,scroll="30s")
滚动大小=len(pg["hits"]["hits"])
print "滚动大小:" + str(scroll_size)
sid=pg["_scroll_id"]
数据=pg["点击数"]["点击数"]
……
对于我在范围内(0,scroll_size):
data[i]["_source"]["attributes"]["senti"]={"label":label, "score": 分数, "confidence": 置信度}
用户评论
我正在学习 Elasticsearch,Bulk API 看起来很有用!
有16位网友表示赞同!
想了解更多关于使用Bulk API优化索引速度的信息。
有11位网友表示赞同!
不知道 Bulk API 是否可以用来更新多个文档?
有13位网友表示赞同!
有没有关于Bulk API错误处理的教程?
有16位网友表示赞同!
刚开始学习 Elasticsearch,Bulk API 对我来说有点儿模糊
【深入解析Elasticsearch批量操作技巧与应用】相关文章:
1.蛤蟆讨媳妇【哈尼族民间故事】
2.米颠拜石
3.王羲之临池学书
4.清代敢于创新的“浓墨宰相”——刘墉
5.“巧取豪夺”的由来--米芾逸事
6.荒唐洁癖 惜砚如身(米芾逸事)
7.拜石为兄--米芾逸事
8.郑板桥轶事十则
9.王献之被公主抢亲后的悲惨人生
10.史上真实张三丰:在棺材中竟神奇复活
Joe的网球心得记录
总结将深球直接变成小对角线的难度实际上比球在空中飞行时要低。您应该瞄准并施加尽可...
淘宝官方比价工具深度体验:揭秘高效价格对比软件攻略
但并不是每个人都熟悉第三方工具并信任它们。过年期间,不少商家会假装降价,即先涨价,再调...
音视频基础教程入门指南
PNG文件格式解析PNG图像格式文件由8字节PNG文件签名字段和3个以上后续数据块(IHDR、IDA...
经典武侠巨作:《龙门飞甲》揭秘
剧情在当时来说很新颖,很吸引人。还记得那细细的黄沙铺天盖地,甘肃,月牙泉,敦煌,壁画,楼兰,繁...