centos之生成 Avro Schema 文件并存储在 HDFS 中

arxive 阅读:74 2023-09-08 19:26:37 评论:0

我正在使用 avro 工具从 HDFS 中的 avro 文件生成模式文件,并使用以下命令将其转储到 Linux 文件系统:

hadoop jar /usr/bin/Avro/avro-tools-1.8.1.jar getschema /dw/hpm/ap_drg/ap_drg.avro > usr/bin/StageSchema/ap_drg.avsc 

这很好用,可以得到我需要的文件。然而;我希望模式文件位于 HDFS 而不是 Linux 文件系统中。我怎样才能改变这个命令来完成这个?还有其他方法我应该这样做吗?

请您参考如下方法:

玩了一会儿,终于想出了一个可行的办法:

hadoop jar /usr/bin/Avro/avro-tools-1.8.1.jar getschema /dw/hpm/ap_drg/ap_drg.avro | hadoop fs -put -f - /dw/schemas/hpm/ap_drg/ap_drg.avsc 

这将从 hdfs 上的 Avro 文件中提取 Avro 模式,并写入 hdfs 中的 Avro 模式文件。 -f 将确保任何现有的架构文件都将被覆盖。


标签:HDFS
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号