使用Java API将Parquet格式写入HDFS,而不使用Avro和MR
通过直接创建 Pojo的Parquet Schema ,而不使用avro和MR ,将Parquet格式写入HDFS (使用Java API)的简单方法是什么?
我发现的样本已经过时,使用弃用的方法也使用了Avro,spark或MR中的一种。
实际上,没有很多样本可用于在没有外部框架的帮助下读取/编写Apache镶木地板文件。
核心镶木地板库是镶木地板,您可以在其中找到一些直接读/写的测试文件: https : //github.com/apache/parquet-mr/blob/master/parquet-column/src/test/java/org/阿帕奇/拼花/ IO / TestColumnIO.java
然后,您只需要使用与HDFS文件相同的function。 您可以按照以下SOW问题: 使用Java访问HDFS中的文件
更新:响应API的弃用部分:AvroWriteSupport应该被AvroParquetWriter取代,我检查ParquetWriter它不被弃用,可以安全使用。
问候,
卢瓦克
- 使用Java API在Hadoop中移动文件?
- 执行中出现Hadoop错误:键入map中的键不匹配:期望org.apache.hadoop.io.Text,收到org.apache.hadoop.io.LongWritable
- 从Java写入HDFS,“只能复制到0个节点而不是minReplication”
- 将数据附加到HDFS Java中的现有文件
- hadoop2.2.0追加文件发生AlreadyBeingCreatedException
- Java:尝试编译Hadoop程序时找不到com.sun.tools.javac.Main
- 如何在Hadoop MapReduce中将Object设置为Map输出的值?
- 如果我有一个构造函数需要一个文件的路径,如果它被打包到一个jar子里怎么能“假”?
- 如何使用Java有效地读取Hadoop(HDFS)文件中的第一行?