将大型800gb json文件从远程服务器上传到elasticsearch

问题描述 投票:0回答:2

我正在尝试将800gb json文件从远程服务器上传到我的本地服务器,但是elasticsearch一直被杀死。我正在使用此代码上传数据

curl -XPOST http://localhost:9200/carrier/data/ [email protected]

这是因为发布请求无法处理800 GB或某个地方缺少配置Ive。 Ive还适当地映射了所有内容,因为较小的文件可以轻松上传。

indexing elasticsearch import bigdata
2个回答
1
投票

为了索引文档,elasticsearch需要首先在内存中分配此文档,然后再次以分析后的形式对其进行缓冲。因此,您通常会为要索引的文档寻找两倍的内存(比这复杂得多,但是2x是一个很好的近似值)。因此,除非您的计算机上有1.6tb的内存,否则我不应该尝试为800gb的文档建立索引。如果您在此json中有多个文档,则需要将它们拆分为多个块,然后使用多个Bulk Requests发送给elasticsearch。


0
投票

我最终写了一些python代码来解决我的问题,我使用此解决方案来处理> 100GB的json文件而没有任何问题(在localhost服务器上试用)

检查github上的项目:Link to Project - kushan02/large_json_file_import_elasticsearch_python

© www.soinside.com 2019 - 2024. All rights reserved.