xwm1992 commented on issue #339: URL: https://github.com/apache/incubator-eventmesh/issues/339#issuecomment-874590574
> > @yzhao244 Would you like to share some new designs for us? thanks. > > What is the purpose of the design: > > The purpose of the design is for introducing Schema Registry as part of the EventMesh. > The Schema Registry is a central repository with RESTful interfaces for developers to define and register standard schemas. Addresses the problem of different data(event) format of producer and consumer. > > What are the features to provide from Schema Registry: > > 1. Persist and share version history of all schemas(schemas lifecycle management) and verify schema compatibility. > 2. Supports Avro, JSON, and Protobuf formats serialization/deserialization > > What are the high level design to achieve the features > > 1. Defines schema registry data models(subject, schema, version, compatibility) and schema REST API standards based on the open-source OpenSchema specifications. > 2. The eventmesh-database-api abstract module abstracts the CRUD capability of the schema registry into this module. > 3. Eventmesh-database-h2 contains the actual implementation. I proposed to leverage using h2 database and use JDBC API for querying with h2 database in eventmesh. > > The followings are high-level design diagram: >  > An example of Backward Compatibility from OpenSchema Specification >  Hi @yzhao244 , I have some doubts about this design. - The interaction between the Schema Registry and the Database is not represented in this figure; - What is the relationship between **topic** and **schema id**, at present topic store the messages or events, are these represent as data in your figure? - What kind of data does the database and topic need to store -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
