【问题标题】:load orc format to aurora postgres DB将 orc 格式加载到 aurora postgres DB
【发布时间】:2021-03-10 00:22:38
【问题描述】:

我们有一个存储在 s3 中的 ORC 文件格式,我们希望将文件加载到 AWS Aurora postgres DB 中。

我们从网上得到的是:

  1. postgres 支持 csv、txt 等格式,不支持 ORC ..
  2. INSERT OVERWRITE DIRECTORY '<Hdfs-Directory-Path>' ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED AS TEXTFILE SELECT * FROM default.foo;

谁能帮我们找到解决办法?

【问题讨论】:

  • 您需要将该数据转换为与 Aurora / PostgreSQL 兼容的格式。
  • 难道我们没有任何解决方案可以直接将 orc 转换为 csv 或 txt 吗?

标签: postgresql hadoop amazon-s3 orc


【解决方案1】:

此日期 Aurora 上的 PostgreSQL 仅支持通过 COPY 命令从 TXT 和 CSV 文件中提取 S3 中的数据。

由于您的文件是 ORC 格式,您可以将这些图块转换为 CSV 或 TXT 格式,然后提取数据。您可以使用 Athena 轻松完成此操作,只需为原始数据创建一个表并运行 SELECT * FROM 表查询。正如Working with Query Results, Output Files, and Query History 页面中所述,这将自动生成一个包含结果的 CSV 文件。 这不是最优的,因为您不仅要支付转换价格,还要支付两次存储(作为原始 ORC 和转换后的 CSV),但它可以让您非常轻松地转换数据。

更好的方法是使用 AWS Glue 之类的服务,它支持 S3 as source 并具有 Aurora connector。使用这种方法会给你一个实际的 ETL,即使你现在只需要 E(xtract) 和 L(oad),仍然会为你将来可能需要的任何类型的转换打开大门。

在这个标题为 How to extract, transform, and load data for analytic processing using AWS Glue (Part 2) 的 AWS 博客中,他们展示了相反的流程(Aurora->通过 Glue 的 S3),但它仍然应该让您对流程有所了解。

【讨论】:

    猜你喜欢
    • 2020-07-13
    • 1970-01-01
    • 2017-09-15
    • 1970-01-01
    • 2018-07-22
    • 2022-01-09
    • 2017-08-26
    • 1970-01-01
    • 2018-11-09
    相关资源
    最近更新 更多