- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 avro-tools 将 avro avdl 文件 ( http://avro.apache.org/docs/1.7.6/idl.html#example ) 转换为 avro 模式文件 (example.avsc)。我下载了 avro-tools 1.7.6 和 1.6.3
example.avdl
/**
* An example protocol in Avro IDL
*/
@namespace("org.apache.avro.test")
protocol Simple {
@aliases(["org.foo.KindOf"])
enum Kind {
FOO,
BAR, // the bar enum value
BAZ
}
fixed MD5(16);
record TestRecord {
@order("ignore")
string name;
@order("descending")
Kind kind;
MD5 hash;
union { MD5, null} @aliases(["hash"]) nullableHash;
array<long> arrayOfLongs;
}
error TestError {
string message;
}
string hello(string greeting);
TestRecord echo(TestRecord `record`);
int add(int arg1, int arg2);
bytes echoBytes(bytes data);
void `error`() throws TestError;
void ping() oneway;
}生成的example.avsc
{
"protocol" : "Simple",
"namespace" : "org.apache.avro.test",
"doc" : "* An example protocol in Avro IDL",
"types" : [ {
"type" : "enum",
"name" : "Kind",
"symbols" : [ "FOO", "BAR", "BAZ" ],
"order" : "descending",
"aliases" : [ "org.foo.KindOf" ]
}, {
"type" : "fixed",
"name" : "MD5",
"size" : 16
}, {
"type" : "record",
"name" : "TestRecord",
"fields" : [ {
"name" : "name",
"type" : {
"type" : "string",
"order" : "ignore"
}
}, {
"name" : "kind",
"type" : "Kind"
}, {
"name" : "hash" ...我在我的 Mac 上使用以下命令来生成它
java -jar avro-tools-1.6.3.jar idl example.avdl (I've tried both 1.6.3 and 1.7.6)
上面生成的模式文件无效,因为它没有名称、类型和字段作为顶级属性。
这里有什么问题吗?
谢谢
最佳答案
idl 命令生成 Avro 协议(protocol)文件 (.avpr) - 要生成架构 (.avsc),您需要使用 idl2schemata 命令,该命令采用输入 idl 和可选输出目录作为参数(将使用当前目录)如果未提供)并根据 IDL 中的类型生成一个或多个文件,例如
java -jar avro-tools-1.7.7.jar idl2schemata example.avdl .
关于java - avro-tools 将 avdl 转换为 avsc 不会生成正确的 avsc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24274178/
我正在尝试使用 avro-tools 将 avro avdl 文件 ( http://avro.apache.org/docs/1.7.6/idl.html#example ) 转换为 avro 模式
我有一个 hive 表模式存储在一个 hdfs 文件 schema.avsc 中。我想创建一个具有相同模式的配置单元表,并希望从数据存储在 HDFS 文件系统中的另一个 hdfs 路径转储数据。 1:
我尝试通过以下步骤创建一个配置单元表: 使用 sqoop 将数据加载到 hdfs(完成) sqoop 还创建了一个 avsc 文件,我将其上传到 hdfs 在配置单元中,我想使用以下语句创建一个表:
avro 转换很常见 avdl文件(idl 文件)到 avsc文件(模式文件)。我想从 avsc 向另一个方向转换至 avdl ,因为我手动创建了一些 avsc 文件,并希望以更简单、更漂亮的 avd
如何从 avro header 创建“.avsc”文件? 第一行内容是否是该 avro 的 avsc 文件? 或者 avsc 内容应该从:{"type":"record"up to "}avro 开始
我有一个 avro 架构文件(.avsc 文件扩展名) 如何在我的 Macbook 上打开此文件?我不知道这种文件格式,因为我是第一次使用它。 谢谢! 最佳答案 avsc 文件包含与 json 模式非
我有两个架构文件 首先是position.avsc { "type":"enum", "name": "Position", "namespace": "avro.examples.baseball"
我有一个 avro 架构文件,我需要通过 pyspark 在 Databricks 中创建一个表。我不需要加载数据,只想创建表。最简单的方法是加载 JSON 字符串并从 fields 数组中获取 "n
我正在寻找一种方法来标记 avro 字段已弃用的方式,即生成的 Java 代码(该字段的 getter 和 setter)标记为 @Deprecated注解。 放置@Deprecated进入 "doc
我刚刚开始使用 hadoop,我正在使用 Avro (fastavro)。 1- 我想验证架构并转换为 .avro 文件。 { "type": "record", "name": "Node",
我正在将巨大的 xml 文件转换为 avro 格式,作为其中的一部分,我将不得不使用 XSD 模式生成 Avro 文件模式 - 使用 Python(最好)。我找不到此转换的任何有效资源。社区可以帮我解
我想将我的输入文件 (xml/json) 转换为 parquet。我已经有了一个适用于 spark 的解决方案,并创建了所需的 Parquet 文件。 但是,由于其他客户要求,我可能需要创建一个不涉及
我是一名优秀的程序员,十分优秀!