首页 > 解决方案 > 如何验证 Avro 模式文件的格式以查看它是否符合 Apache Avro 规范

问题描述

我们的系统必须处理 Avro 模式。在将 Avro 模式文件发送到服务器之前,我想验证提交的模式文件的格式,看看它是否符合 Apache Avro 规范。

Avro 模式是一个 Json 文件,因此要对 Avro 规范进行基本验证,我需要 Avro 模式文件的 Json 模式(我知道这听起来很混乱)。不幸的是,Apache Avro 规范没有为我可以通过验证器运行的 Avro 模式提供任何定义文件。

有人知道我在哪里可以找到根据 Apache Avro 规范定义 Avro 模式文件结构的 Json 模式吗?

标签: avrojsonschema

解决方案


如果您有 Avro 文件,则该文件包含架构本身,因此已经是“有效的”。如果无法使用您提供的模式创建文件,那么您应该得到一个异常(或者,至少,任何无效属性都将被忽略)

您可以通过

java -jar avro-tools.jar getschema file.avro

我不知道在不通过 Avro 客户端库读取器方法的情况下使用不同模式获取文件的方法


推荐阅读