【发布时间】:2020-07-13 01:41:48
【问题描述】:
问题
我想将如下所示的普通 Json 文件转换为 avro 模式,以使其在具有融合模式注册表的 apache kafka 中工作。
示例
输入(Json)
[
{
"name": "Robin Hood",
"department": "",
"manager": "",
"salary": 200
},
{
"name": "Arsene Wenger",
"department": "Bar",
"manager": "Friar Tuck",
"salary": 50
},
{
"name": "Friar Tuck",
"department": "Foo",
"manager": "Robin Hood",
"salary": 100
},
{
"name": "Little John",
"department": "Foo",
"manager": "Robin Hood",
"salary": 100
},
{
"name": "Sam Allardyce",
"department": "",
"manager": "",
"salary": 250
},
{
"name": "Dimi Berbatov",
"department": "Foo",
"manager": "Little John",
"salary": 50
}
]
输出(Avro 模式)
{
"name": "MyClass",
"type": "array",
"namespace": "com.acme.avro",
"items": {
"name": "MyClass_record",
"type": "record",
"fields": [
{
"name": "name",
"type": "string"
},
{
"name": "department",
"type": "string"
},
{
"name": "manager",
"type": "string"
},
{
"name": "salary",
"type": "int"
}
]
}
}
一个 Json Schema 作为输入也很好。
这个问题was asked a while ago 但没有好的答案。
有一个 website 可以做到这一点,但我想要一个库或 cli。
谢谢!
【问题讨论】:
标签: json apache-kafka avro confluent-schema-registry