【问题标题】:Is it possible to load parquet table directly from file?是否可以直接从文件加载镶木地板?
【发布时间】:2015-02-09 18:27:58
【问题描述】:

如果我有一个二进制数据文件(可以转换为 csv 格式),有没有办法直接从它加载 parquet 表?许多教程显示将 csv 文件加载到文本表,然后从文本表加载到 parquet 表。从效率的角度来看,是否可以直接从我已经拥有的二进制文件中加载镶木地板表?理想情况下使用创建外部表命令。 还是我需要先将其转换为 csv 文件?有文件格式限制吗?

【问题讨论】:

  • 昨天我使用 apache Drill 生成的 parquet 文件创建了一个外部表。

标签: hadoop cloudera-cdh impala parquet


【解决方案1】:

不幸的是,无法在 Impala 中读取自定义二进制格式。您应该将文件转换为 csv,然后在现有 csv 文件上创建一个外部表作为临时表,最后插入从临时 csv 表读取的最终 parquet 表。 Impala Parquet documentation 有更多信息和一些相关示例。参见压缩小文件部分,类似。

我不知道您如何将文件格式转换为 csv,但您可以考虑编写一个程序将二进制格式转换为 Parquet。例如,您可以编写一个写入 Parquet 文件的 MapReduce 作业。这是一个读取和写入 Parquet 的示例: https://github.com/cloudera/parquet-examples/blob/master/MapReduce/TestReadWriteParquet.java

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2017-05-06
  • 2019-03-30
  • 2023-03-24
  • 2023-03-27
  • 2023-04-01
  • 2020-02-01
  • 2022-11-27
  • 2017-11-21
相关资源
最近更新 更多