我有一个包含大约 590,035 个文件的文件夹json
。每个文件都是一个必须被索引的文档。如果我使用 python 索引每个文档,则需要 30 多个小时。如何快速索引这些文档?
注意- 我见过批量 api,但这需要将所有文件合并到一个文件中,这需要与上述类似的时间。请告诉我如何提高速度。谢谢你。
我有一个包含大约 590,035 个文件的文件夹json
。每个文件都是一个必须被索引的文档。如果我使用 python 索引每个文档,则需要 30 多个小时。如何快速索引这些文档?
注意- 我见过批量 api,但这需要将所有文件合并到一个文件中,这需要与上述类似的时间。请告诉我如何提高速度。谢谢你。
如果您确定 I/O 是您的瓶颈,请使用线程读取文件,即 with ThreadPoolExecutor
,并为批量请求累积或一一保存。在您使用唯一 ID 或内部 ID 之前,ES 不会有任何问题。
Bulk 将更快地工作,只是通过节省 HTTP 开销的时间,节省 1 比 1 更容易编码。