在python中使用elasticsearch 需要注意的一些问题
2024-09-07 03:28:51
1, py es client 使用是 http ,java api 使用是 tcp
2, es.scroll() 方法 在查询多个索引的时候会报 :
elasticsearch.exceptions.RequestError: RequestError(400, u'too_long_frame_exception', u'An HTTP line is larger than 4096 bytes.')
因为多个索引的时候 , _scroll_id 会很长,超过4096, 4096 是 http请求中默认的最大值,所以在请求的时候, 服务端会报错。
向下跟代码,把代码改一下:
原来是
page = es.scroll(scroll_id=sid, scroll='2m', request_timeout=30)
改为
es.transport.send_get_body_as = 'POST'page = es.scroll(body={'scroll': '2m', 'scroll_id': sid},
request_timeout=30)
python 库中代码如下:
最新文章
- 【BZOJ3282】Tree LCT
- JavaScript中正则表达式test()、exec()、match() 方法区别
- [转]Hibernate不能自动建表解决办法及Hibernate不同数据库的连接及SQL方言
- VS设置背景色减缓眼睛疲劳
- 【收藏】Myeclipse优化
- NAND flash NOR flash SDRAM区别
- Network Link Conditioner模拟不同网络环境
- POJ 1276 (多重背包) Cash Machine
- 安装Laravel之坎坷记述
- java_泛型 TreeSet 判断hashcode/length(升序排列)
- 龙芯8089_D安装debian 8 iessie
- CSS布局注意(纯属个人总结)
- bootstrap(响应式)加减输入框
- vim中常用基本命令
- 未能找到类型或命名空间名称“Quartz”
- LNMP环境部署
- Codeforces 979E Kuro and Topological Parity - 动态规划 - 组合数学
- ckeditor粘贴上传图片
- 【IL】IL入门
- v-if 与 v-show 区别