我需要把restapi调用的输出推到kafka中。restapi将包含支持信息的json输出与数据输出一起返回到json.rawmessage中
type Response struct {
RequestID string `json:"requestId"`
Success bool `json:"success"`
NextPageToken string `json:"nextPageToken,omitempty"`
MoreResult bool `json:"moreResult,omitempty"`
Errors []struct {
Code string `json:"code"`
Message string `json:"message"`
} `json:"errors,omitempty"`
**Result json.RawMessage `json:"result,omitempty"`**
Warnings []struct {
Code string `json:"code"`
Message string `json:"message"`
} `json:"warning,omitempty"`
}
json.rawmessage包含200条记录的数据。
问题:1。作为一个制作人,我应该把整个原始信息作为一个信息放到Kafka的主题中吗?或者解组(解析)json原始消息,并将每条消息记录作为一条消息(在这种情况下将有200条记录)2。如果我解组(解析),数据将不再是json格式。
我不提供任何代码。。。我的代码可以用围棋,python
主题的最终使用者是spark或自定义程序,它从主题中读取数据并将数据推送到另一个系统。
请告诉我什么是最好的设计/方法?
谢谢
1条答案
按热度按时间2wnc66cl1#
没有别的答案,只有一个伟大的大“这取决于”:
它取决于您对数据所做的操作(“推送到另一个系统”只是处理数据的一个步骤),并且取决于数据的语义和业务含义。
如果你的200条信息中的每一条都有自己的意义,独立于其他信息,那么在Kafka上解开并把它们作为单独的信息是有意义的。