Apache Avro
Apache Avro is an Open Source schema and IDL language from Apache. It is often used with Apache Kafka or other big data tools.
Converts the Concerto model to an Avro .avdl file. Use avro-tools.jar to convert AVDL to a JSON Avro schema.
concerto compile --model test.cto --target avro
Sample Output
@namespace("test@1.0.0")
protocol MyProtocol {
import idl "concerto@1.0.0.avdl";
record Person {
string email;
union { null, string } dob;
}
}
Options
None.
Limitations
$identifierand$timestampcannot be used as a property names, so these are converted to_identifierand_timestamp.- DateTime is stored as a
longwith the@logicalType("timestamp-micros")annotation - No super types, so properties across the inheritence hierarchy are merged into each record
- Relationships are represented as
string - Scalars are unboxed as properties