在 apache kafka 中合并 post 请求
merging post request in apache kafka
我有 3 个数据源,提供 api 来访问它们,每个数据源都提供一些信息,我想处理所有三个请求并将它们全部保存在数据库中的一个请求中。所以我的问题是,Kafka 能否合并这些请求,前提是所有这些源都有一个公共 ID,将其保存在数据库中并将单个请求发送到下游系统..?
我们可以将不同数据源的数据存储在不同的主题中,然后使用Kafka Streams将多个主题的消息合并为一个主题。
合并数据的 Scala 示例
val mergedStream = streamBuilder.merge(sensor1Stream, sensor2Stream, sensor3Stream, sensor4Stream)
mergedStream.to(Serdes.String(), heartbeatSerde, "Merged-SensorsHeartbeat")
我建议您按照以下 link 了解更多信息。
http://www.alternatestack.com/development/app-development/kafka-streams-merging-multiple-kstream-s/
有两种类型的连接器可用Sink and Source Connectors。 Source connector用于从外部系统向kafka topic写入数据,Sink Connector用于从kafka topic读取数据并写入外部系统。
现在您可以使用 kafka connectors or debezium 从合并分区读取数据并写入您的数据库。
我有 3 个数据源,提供 api 来访问它们,每个数据源都提供一些信息,我想处理所有三个请求并将它们全部保存在数据库中的一个请求中。所以我的问题是,Kafka 能否合并这些请求,前提是所有这些源都有一个公共 ID,将其保存在数据库中并将单个请求发送到下游系统..?
我们可以将不同数据源的数据存储在不同的主题中,然后使用Kafka Streams将多个主题的消息合并为一个主题。
合并数据的 Scala 示例
val mergedStream = streamBuilder.merge(sensor1Stream, sensor2Stream, sensor3Stream, sensor4Stream)
mergedStream.to(Serdes.String(), heartbeatSerde, "Merged-SensorsHeartbeat")
我建议您按照以下 link 了解更多信息。
http://www.alternatestack.com/development/app-development/kafka-streams-merging-multiple-kstream-s/
有两种类型的连接器可用Sink and Source Connectors。 Source connector用于从外部系统向kafka topic写入数据,Sink Connector用于从kafka topic读取数据并写入外部系统。
现在您可以使用 kafka connectors or debezium 从合并分区读取数据并写入您的数据库。