java - 使用自定义接收器从数据集中接收流数据 [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
先感谢您!
解决方案
spark 不支持 jdbc 数据库表的流式传输。但它确实支持作为接收器。而是使用 kafka 连接将数据库表中的数据作为流服务发送,并通过 spark 结构化 straming 读取。
推荐阅读
- javafx - Java FX 使用 fxml 文件创建自定义对话框。如何设置或从中获取结果?
- asp.net - 模态弹出表单验证在 onclick 函数中不起作用
- inno-setup - 如何根据 Inno Setup 中的 Windows 版本添加/不添加卸载程序的快捷方式?
- node.js - 在生产环境中使用socket.io?
- vue.js - axios使用vue请求跨域错误
- flutter - Flutter如何添加选择选项
- python - 在 Django 数据库模型中创建一个数组字段
- php - 发布请求 Wordpress
- java - 在 Android 中加载 .h5 模型文件
- javascript - 使用 date-fns 转换时间