- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我知道由
定义的“正常”avro 枚举enum ActionType {CREATE, REMOVE}
在.avdl 文件中或者通过 avro 模式中的这种类型的构造:
{ "type": "enum",
"name": "ActionType",
"symbols" : ["CREATE", "REMOVE"]
}
问题是我的特定实体将具有可以具有值的字段“01”和“02”。
所以我的问题是:1. 这是正确的 avro 枚举定义吗
{ "type": "enum",
"name": "MyType",
"symbols" : ["01", "02"]
}
否则我必须选择简单
{"name":"id","type":{"type":"string","avro.java.string":"String"}}
最佳答案
symbols: a JSON array, listing symbols, as JSON strings (required). All symbols in an enum must be unique; duplicates are prohibited. Every symbol must match the regular expression
[A-Za-z_][A-Za-z0-9_]*
(the same requirement as for names).
https://avro.apache.org/docs/current/spec.html#Enums
您可能需要考虑一种将原始值“01”、“02”转换为 Avro 枚举符号“VALUE_01”、“VALUE_02”的转换层。这必须在您的应用程序代码中定义。它不是 Avro 提供的功能。或者,您可以像您建议的那样将其定义为 string
。这可能是最快的解决方案,但没有像枚举那样明确定义和限制可能的值。
关于java - 有没有办法在 avdl 文件中定义类似数字的枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58804262/
我知道由 定义的“正常”avro 枚举 enum ActionType {CREATE, REMOVE} 在.avdl 文件中或者通过 avro 模式中的这种类型的构造: { "type": "enu
我有一个多模块项目。有一个核心模块定义了一些通用或通用的东西。我在该核心模块中定义了一个 avdl 文件。我想在其他模块中定义一些其他 avdl 文件,这些文件使用核心模块中 avdl 文件定义的类型
avro 转换很常见 avdl文件(idl 文件)到 avsc文件(模式文件)。我想从 avsc 向另一个方向转换至 avdl ,因为我手动创建了一些 avsc 文件,并希望以更简单、更漂亮的 avd
我在为 java.math.BigDecimal 类型编写 Avro 模式时遇到问题,我尝试了以下方法: 基于 Avro 官方 doc ,我知道我需要自己定义逻辑类型来支持 BigDecimal,但该
我正在尝试使用 avro-tools 将 avro avdl 文件 ( http://avro.apache.org/docs/1.7.6/idl.html#example ) 转换为 avro 模式
我是一名优秀的程序员,十分优秀!