Apache spark Spark&x2B;卡夫卡:如何将卡夫卡流与RDBMS连接起来
要求:我有不同的微服务为卡夫卡生成数据。我想收集信息,进行聚合,并为报告构建表 构建用于报告的新表需要我从Kafka读取数据,将其与现有事实表进行比较,并在数据库中创建/更新新ROE 我当时的想法是使用Spark Streaming来阅读卡夫卡主题,并与RDBMS数据库连接Apache spark Spark&x2B;卡夫卡:如何将卡夫卡流与RDBMS连接起来,apache-spark,apache-kafka,spark-streaming,Apache Spark,Apache Kafka,Spark Streaming,要求:我有不同的微服务为卡夫卡生成数据。我想收集信息,进行聚合,并为报告构建表 构建用于报告的新表需要我从Kafka读取数据,将其与现有事实表进行比较,并在数据库中创建/更新新ROE 我当时的想法是使用Spark Streaming来阅读卡夫卡主题,并与RDBMS数据库连接 正在寻求帮助以了解连接的最佳方式。
正在寻求帮助以了解连接的最佳方式。
或 b。尝试将更新的数据发布到新的主题,并使用JDBC接收器连接器更新回RDBMS DB表
我建议尝试结构化流,并将这些数据帧与从jdbc连接中提取的数据帧连接起来。问题是DB可能有数百万条记录,但Kafka可能只有少数条目的记录。从DB加载整个表似乎是一个问题步骤1加载整个数据在我的情况下数百万条记录听起来不可伸缩Kafka适用于大规模数据…并且可以根据需要轻松伸缩…我最终编写了一个spark流作业和一个计划作业。Spark Streaming job负责读取Kafka主题并更新事实表,Spark schedule job负责读取数据仓库并更新报告表。我不确定这是最好的方法,但它解决了我的问题