hadoop - 如何从 parquet 文件中获取模式/列名?

标签 hadoop apache-pig hdfs parquet

我有一个文件作为 part-m-00000.gz.parquet 存储在 HDFS 中

我尝试运行 hdfs dfs -text dir/part-m-00000.gz.parquet 但它被压缩了,所以我运行了 gunzip part-m-00000.gz。 parquet 但它不会解压缩文件,因为它无法识别 .parquet 扩展名。

如何获取此文件的模式/列名称?

最佳答案

您将无法使用 hdfs dfs -text “打开”文件,因为它不是文本文件。与文本文件相比,Parquet 文件写入磁盘的方式非常不同。

同样,Parquet 项目提供了 parquet-tools 来执行您正在尝试执行的任务。打开并查看模式、数据、元数据等。

查看 parquet-tool 项目 parquet-tools

此外,支持 Parquet 并为 Parquet 做出重大贡献的 Cloudera 也有一个不错的页面,其中包含有关 parquet-tools 用法的示例。该页面中针对您的用例的示例是

parquet-tools schema part-m-00000.parquet

检查 Cloudera 页面。 Using the Parquet File Format with Impala, Hive, Pig, HBase, and MapReduce

关于hadoop - 如何从 parquet 文件中获取模式/列名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33883640/

相关文章:

hadoop - 从 Pig UDF Java 类中的分布式缓存访问文件,Amazon EMR

hadoop - hadoop摄取文件

hadoop - Apache Nifi 无法写入 HDFS

apache - 控制 HDFS 复制、映射器数量和 reducer 识别

hadoop - Hadoop安装:无作业跟踪器可停止,无名称节点可停止

hadoop - Pig : How to send all Tuples to a UDF to be Processed without Grouping them? 或者如何在不分组的情况下将元组转换为包?

eclipse-plugin - hadoop 的 eclipse 插件是否与 CDH3 一起工作

hadoop - 对 Hive 中存储的数据运行 Pig 查询

hadoop - Oozie Hive 操作在 SerDe 上失败

hadoop - 使用 Lz4 在 ORC 中进行 Hive 压缩