将数据从 Postgres 数据库导出到 Parquet 文件

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

我想安装一个扩展以将数据从 PostgreSQL 数据库导出到 Parquet 文件中。数据库正在 Docker 容器中运行,我不知道如何操作。

我尝试了一些解决方案,但最终在某个时候陷入困境。

https://github.com/adjust/parquet_fdw/blob/master/README.md

https://lib.rs/crates/pg2parquet

我没有经验知道什么是最好的以及是否有更好的选择。

linux database postgresql docker parquet
1个回答
0
投票

您提到的外部数据包装器的扩展(parquet_fdw)将允许您的postgres服务器从parquet文件中读取数据,但目前它并不能解决您写入parquet文件的问题。

相反,由于您的服务器在容器上运行,并且如果您只想将 postgres 表作为 parquet 文件获取,那么 pg2parquet 实用程序可以完全满足您的要求:

  1. 在您可以访问的服务器中安装 pg2parquet 工具(cargo 方法似乎很简单)(如果不可用,您可以首先使用
    yum install cargo
    apt-get install cargo
    作为超级用户,具体取决于您的 Linux 服务器是基于 rpm 还是 deb):
cargo install [email protected]
  1. 直接使用它来查询您的数据库表并将其导出到镶木地板文件(确保您知道下面作为 $PG 变量给出的连接详细信息):
~/.cargo/bin/pg2parquet export --host $PGHOST --dbname $PGDATABASE --user $PGUSER --password $PGPASSWORD --table $PGTABLE --output-file $PGTABLE.parquet
© www.soinside.com 2019 - 2024. All rights reserved.