【发布时间】:2021-10-04 06:23:54
【问题描述】:
这是否可以在 avro 模式中创建具有他的参数之一的类?
java 中的示例:
public class Example {
private Integer value;
private Example example;
}
【问题讨论】:
标签: java recursion schema avro
这是否可以在 avro 模式中创建具有他的参数之一的类?
java 中的示例:
public class Example {
private Integer value;
private Example example;
}
【问题讨论】:
标签: java recursion schema avro
Avro 模式不是在 java 中定义的,而是在一个通常带有 .avsc 文件扩展名的 json 文件中定义的。下面是一个表示树的递归 avro 模式示例:
{
"type": "record",
"name": "Node",
"fields": [
{
"name": "value",
"type": "long"
},
{
"name": "children",
"type": { "type": "array", "items": "Node" }
}
]
}
所以是的,创建递归模式是完全可能的。
另请参阅this issue,其中定义了更短的架构:
{
"type": "record",
"name": "RecursiveRecord",
"fields": [{"name": "child", "type": "RecursiveRecord"}]
}
【讨论】: