首页 > 解决方案 > 使用自定义接收器从数据集中接收流数据 [Spark Streaming]

问题描述

我是新来的Spark,它是图书馆!

我有一个案例,我需要将数据集发送到store()自定义接收器,然后从这个自定义接收器流式传输数据。

我在自定义接收器类中以这种方式获取数据集:

Dataset<Row> jdbcDF = spark.read()
.format("jdbc")
.option("url", "jdbc:mysql:dbserver")
.option("dbtable", "schema.tablename")
.option("user", "username")
.option("password", "password")
.load();

现在我想将此数据集用作流数据,因此我必须将此数据集存储在store()Receiver 类中:

store(jdbcDF);

是否可以通过这种方式进行流式传输?

ps没用Structured Streaming Programming

先感谢您!

标签: javaapache-sparkapache-spark-sqlspark-streamingapache-spark-dataset

解决方案


spark 不支持 jdbc 数据库表的流式传输。但它确实支持作为接收器。而是使用 kafka 连接将数据库表中的数据作为流服务发送,并通过 spark 结构化 straming 读取。


推荐阅读