yzhao244 commented on issue #339:
URL: 
https://github.com/apache/incubator-eventmesh/issues/339#issuecomment-874276751


   > @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:
   
![image](https://user-images.githubusercontent.com/15642771/124508829-9f2c8b80-dd9e-11eb-878b-e861d2f0a898.png)
   
![image](https://user-images.githubusercontent.com/15642771/124508845-a6539980-dd9e-11eb-8377-bde9ab424219.png)
   
   


-- 
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]

Reply via email to