我正在观看 Robin Moffatt 的一个视频 ( https://rmoff.net/2020/06/17/loading-csv-data-into-kafka/ ),并相信 Apache Kafka 可能会帮助我自动化我拥有的工作流程。
我有一个要求,我需要从客户那里获取 CSV,将原始信息的子集以各种格式(文本或 csv)发送给 2 个供应商,从这些供应商接收数据,然后合并所有数据。
我有点不喜欢卡夫卡,但我想我会有一个如下的过程:
将客户的数据提取到 kafka 并保存到 SQL Server 或 Postgres 数据库。然后我将发布 2 个“我们有数据”流。每个流基本上都有一行,代表我们从客户那里收到的批次。这些作为主题的流将由 kafkaJS 消费者使用。使用消息中的信息,这些消费者基本上将根据该供应商所需的输出从数据库中选择数据。
在此过程中,我们期待 2 个响应。当每个响应进入 (SFTP) 时,我们会将响应文件(JSON 或 CSV)摄取到数据库中,就像我们对原始客户信息所做的那样。如果我们已收到所有数据,我们将发布另一条消息,该消息将由合并所有数据的消费者使用。
像罗宾这样的卡夫卡忍者有什么建议吗?非常感激。
广东