当前位置:   article > 正文

将elasticsearch数据存储到excel中

将elasticsearch数据存储到excel中

由于elasticsearch数据在线上,偶尔需要将数据导到本地环境进行分析。目前有需求是将数据导入到excel表中,下面是我在用的实现方案。

1、将线上elasticsearch数据备份成文件

首先通过elasticdump组件将线上指定的index导出成文本文件

elasticdump --input="http://192.168.0.30:9200/adv_default" --output="/bigdata/adv_default.data" --type=data --limit=10000

数据样例:

2、将生成的文本文件下载到指定位置存储,以我本地电脑为例

3、通过python脚本将数据写入到excel

  1. import json
  2. import pandas as pd
  3. # 读取JSON文件
  4. json_file_path = 'D:/data/adv_default.data'
  5. with open(json_file_path, 'r', encoding='utf-8') as file:
  6. json_data = file.readlines()
  7. # 解析JSON数据
  8. data_list = []
  9. for line in json_data:
  10. json_line = json.loads(line)
  11. source_data = json_line['_source']
  12. data_list.append(source_data)
  13. # 转换为DataFrame
  14. df = pd.DataFrame(data_list)
  15. # 指定 输出的 Excel 文件路径
  16. excel_output_file = json_file_path.split('.')[0] + '.xlsx'
  17. # 将数据写入Excel文件
  18. df.to_excel(excel_output_file, index=False)

 生成的文件格式如下:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/article/detail/45981
推荐阅读
相关标签
  

闽ICP备14008679号