MatrixHB opened a new issue, #205:
URL: https://github.com/apache/rocketmq-streams/issues/205

   #### The present situation of RocketMQSource:
   The message is parsed into a string and then converted into a JsonObject, 
which is used as the basic data structure for subsequent operators processing.
   
   #### Disadvantages of present design:
   
   1. Converting a body into a String will restrict the use scenarios and will 
also be incompatible with the _RocketMQ Schema_. After supporting _RocketMQ 
Schema_, not all bodies can be directly converted into a String or JSON, for 
example, some messages are serialized in Avro format.
   
   2. At present, when using rocketmq-streams, operations in the form of Java 
objects are not supported. Operators such as map, flatMap and filter need to 
explicitly convert into JsonObject, which is very unfriendly.
   
   3. In RsqlDB, the body format of each message is required to correspond to 
the Table structure strictly according to the field order and separated by 
commas, as follows. This invisible requirement is very unfriendly.
   ```
   1,2,3,4 #message1
   2,2,3,4 #message2
   3,2,3,4 #message3
   4,2,3,4 #message4
   ```
   
   #### Steps to complete this issue
   
   1. All types of bodies can be converted into JsonObject or 
UserDefinedMessage according to the _RocketMQ Schema_, and subsequent window 
operators still use JsonObject as the basic data structure. Scenarios are 
supported where schema registry components are not deployed.
   
   2. The message content for rsqldb can be based on the serialization of Java 
objects, rather than the comma separated format of strictly ordered field 
values.
   
   3. Subsequent window operators can be processed based on Java objects, 
rather than JsonObject. But this will take a long time and hard work, since the 
overall link relies heavily on JsonObject at present.
    
   


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

Reply via email to