HDFS 中的 Avro 模式生成

Posted

技术标签:

【中文标题】HDFS 中的 Avro 模式生成【英文标题】:Avro Schema Generation in HDFS 【发布时间】:2016-10-14 15:38:41 【问题描述】:

我有一个场景,我在 HDFS 中有一些 avro 文件。我需要为 HDFS 中的这些 AVRO 数据文件生成 Avro Schema 文件。我尝试使用 Spark (https://github.com/databricks/spark-avro/blob/master/src/main/scala/com/databricks/spark/avro/SchemaConverters.scala) 进行研究。

除了将 AVRO 数据文件带到本地并进行 HDFS PUT 之外,还有其他方法吗?

欢迎提出任何建议。谢谢!

【问题讨论】:

【参考方案1】:

每个 avro 文件都包含编写它的 avro 模式。您可以使用 avro-tools.jar(从 maven 下载)提取此模式。您只能下载一部分(假设所有其他文件都是用相同的架构编写的)并使用 avro 工具(java -jar ~/workspace/avro-tools-1.7.7.jar getschema xxx.avro)来提取它

【讨论】:

以上是关于HDFS 中的 Avro 模式生成的主要内容,如果未能解决你的问题,请参考以下文章

将 XML 转换为 Avro 并生成 AVRO 模式

Avro 模式中的多态性和继承

从 Avro Debezium 数据创建基于 Avro 的 KSQL 流会生成奇怪的模式

从 JSON 文档生成 AVRO 模式

如何使用 PIG 将 Avro 格式存储在 HDFS 中?

Hadoop 应用程序中的 Avro 用例