在 json 文件中写入 elasticsearch 数据

Write elasticsearch data in json file

我有 3 个节点的 elasticsearch 集群,我将数据以 json 格式放入索引名称 pp_index 中。我想读取该数据并写入 json 文件。

我可以从下面的命令中读取数据,但是我怎样才能将这些数据写入 json 文件

   curl -H 'Content-Type: application/json' -X GET http://localhost:9200/pp_index/_search?pretty

您可以使用 curl -o 参数将输出写入如下文件:

curl -H 'Content-Type: application/json' -X GET http://localhost:9200/pp_index/_search?pretty -o myfile.json

但是上面的搜索 API 将 return 只有索引中的前 10 个文档,因为您没有传递 size 参数。如果您需要更多数据,您可以设置 size 参数值,它支持最大 10000.

http://localhost:9200/pp_index/_search?size=10000

我建议使用 Java 或 Python elasticsearch 客户端,因为您可以从索引中获取所有数据并使用客户端将其导出。