前言:
最近要将数据通过presto进行导出。我们使用的是redash来作为可视化查询工具,但是redash导出文件有限制。这里使用presto 客户端来进行数据导出。
准备 :
数量量较大时命令行接口(Command Line Interface)
下载presto-cli-xxx-executable.jar,然后重命名为presto,执行./presto --help,会有相关可利用选择。我们使用 --execute 执行命令导出csv。例如:
presto --server ip:port --catalog=xxx --user=xxx --execute '需要导出的sql查询命令' --output-format CSV > xxx.csv
注意:
- -f 还可以执行sql脚本。查询复杂建议使用这种方式。
- presto会把execute的’'和sql脚本里的’混淆导致失败,另外sql脚本里要加上;结束,不然会导致Non-terminated statement 异常。
- 如果csv出现中文乱码,执行下面指令:iconv -f UTF8 -t GB18030 xxx.csv >tmp.csv