当我已经有了一个系统,并且我想在上面实现一个火花流时,问题就出现了。我在MySQL上有5000万行事务数据,我想报告这些数据。我想把数据转储到HDFS中。现在,数据每天都在DB中出现,我正在为新的数据添加KAFKA。
我想知道如何组合多个源数据并进行实时分析(延迟1-2分钟是可以的),并保存这些结果,因为未来的数据需要先前的结果。
发布于 2022-08-27 11:51:17
连接在SparkSQL中是可能的,但是当您需要更新mysql中的数据时会发生什么呢?然后,HDFS数据很快就会失效(当然比几分钟还要快)。提示: Spark可以使用JDBC而不是需要HDFS导出。
在不了解更多您的系统的情况下,我说让mysql数据库继续运行,因为可能还有其他的东西在积极地使用它。如果您想使用Kafka,那么这是一个连续的数据输入,但HDFS/MySQL不是。将远程批处理查找与流结合起来会很慢(可能超过几分钟)。
但是,如果您使用Debezium从mysql获取数据到Kafka,那么数据集中在一个位置,然后从Kafka摄取到可索引的位置,比如Druid、Apache、Clickhouse,或者可能是ksqlDB。
从这些查询,因为它们是为该用例构建的目的,您不需要火花。选择一个或多个,因为它们各自支持不同的用例/查询模式。
https://stackoverflow.com/questions/73509515
复制相似问题