elasticsearch,Python,Python 3.x,elasticsearch" /> elasticsearch,Python,Python 3.x,elasticsearch" />

如何在Python中可靠地获取Elasticsearch索引大小

如何在Python中可靠地获取Elasticsearch索引大小,python,python-3.x,elasticsearch,Python,Python 3.x,elasticsearch,我目前正在使用Python脚本从twitter流接收推文,并将其发送到Elasticsearch索引。我的下一步是尝试建立某种形式的保护机制,一旦索引达到所需的文件大小(比如2GB),就停止流处理。我已经获得了以字节为单位的存储大小,但在流式处理完成后,该大小显著减小(根据我有限的知识,我假设Elasticsearch正在优化索引),使我的文件大小实际上小于所需的大小 有没有可靠的方法可以找到确切的文件大小并将其用作停止流的方法 我最初的想法是在一定数量的tweet后停止流媒体,但这是不可靠的,

我目前正在使用Python脚本从twitter流接收推文,并将其发送到Elasticsearch索引。我的下一步是尝试建立某种形式的保护机制,一旦索引达到所需的文件大小(比如2GB),就停止流处理。我已经获得了以字节为单位的存储大小,但在流式处理完成后,该大小显著减小(根据我有限的知识,我假设Elasticsearch正在优化索引),使我的文件大小实际上小于所需的大小

有没有可靠的方法可以找到确切的文件大小并将其用作停止流的方法


我最初的想法是在一定数量的tweet后停止流媒体,但这是不可靠的,因为每条tweet的大小不同,无法提供可靠的方法确保其不超过文件大小。

您可以将索引器作为守护进程运行,并在达到2GB时休眠吗?然后,您可以每x秒轮询一次索引大小,看看如果大小低于阈值,是否可以重新开始索引。这是一个好主意!是的,我可以运行elasticsearch实例,背景中的脚本尝试了它,虽然这是一个好主意,但它不起作用。虽然我的Python脚本连接到Elasticsearch实例,但它不会优化大小。我想我只需要设置它,然后忘记它,对此无能为力。你能把你的索引器作为一个守护进程运行,当你达到2GB时就睡觉吗?然后,您可以每x秒轮询一次索引大小,看看如果大小低于阈值,是否可以重新开始索引。这是一个好主意!是的,我可以运行elasticsearch实例,背景中的脚本尝试了它,虽然这是一个好主意,但它不起作用。虽然我的Python脚本连接到Elasticsearch实例,但它不会优化大小。我想我只能把它设置好,然后忘掉它,对此我无能为力。