如何将spark streaming处理结果保存到关系型数据库中
来源:互联网 发布:chrome如何调试js代码 编辑:程序博客网 时间:2024/06/05 17:43
spark streaming是一个分布式高可靠的准实时处理系统,其数据源可以flume、Hdfs、kafka等,其结果可以保存到关系型数据库,HDFS上。保存到HDFS上相对简单,一句话就可以搞定,但是要保存到关系数据库中,相对比较麻烦,既要链接数据库,又要知道数据字段。
我们首先写个wordcount程序测试一下,通过网络发数据到spark streaming
发数据程序如下
打成jar包后运行spark streaming程序如下:运行结果1. DStream.foreachRDD是一个Output Operation,DStream.foreachRDD是数据落地很常用的方法
2. 获取MySQL Connection的操作应该放在foreachRDD的参数(是一个RDD[T]=>Unit的函数类型),这样,当
foreachRDD方法在每个Worker上执行时,连接是在Worker上创建。如果Connection的获取放到dstream.foreachRDD之
前,那么Connection的获取动作将发生在Driver端,然后通过序列化的方式发送到各个Worker(Connection的序列化通常是无法正确序列化的)
3. Connection的获取在foreachRDD的参数中获取,同时还要在遍历RDD之前获取(调用RDD的foreach方法前获取),如果遍历中获取,那么RDD中的每个record都要打开关闭连接,这对于数据库连接资源将是极大的考验
4. 业务逻辑处理定义在func中,它是在foreachRDD的方法参数体中定义的,如果把func的定义放到外面,即Driver中,貌似也是可以的,Spark会对计算方法通过Broadcast进行广播到各个计算节点。
- 如何将spark streaming处理结果保存到关系型数据库中
- 如何将spark streaming处理结果保存到关系型数据库中
- 如何将MySQL数据库sql查询结果保存到excel文件中
- 如何将Select查询结果保存到EXCEL中
- Spark Streaming 将数据保存在msyql中
- Spark Streaming从Kafka自定义时间间隔内实时统计行数、TopN并将结果存到hbase中
- Spark Streaming从Kafka自定义时间间隔内实时统计行数、TopN并将结果存到hbase中
- 如何将图片保存到SqlServer、Oracle、Access数据库中。
- 如何将图片保存到SqlServer、Oracle、Access数据库中
- 将图片保存到数据库的处理
- 如何将图片保存到sql数据库
- 将 0001 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中。
- 如何将opencv的处理结果保存由matlab分析
- 如何将opencv的处理结果保存由matlab分析
- Spark Streaming: 保存上一个批次数据的计算结果
- 将文件保存到数据库中
- 将文件保存到数据库中(stream)
- 将图片保存到数据库中
- JS-面向对象
- 【C/C++】智能指针auto_ptr,share_ptr,unique_ptr
- Hive在查询中使用过滤
- javase之反射
- Splay 维护序列 / 块状链表 NOI 2003
- 如何将spark streaming处理结果保存到关系型数据库中
- SparkStreaming Direct模式总结
- python设计模式之命令模式
- CentOS7 安装Elasticsearch 5.5
- 【转载】翻译:IronPython与CPython的不同之处
- 基于vs2013的slider滑动块控件用法
- 基于Python-ChatterBot搭建不同adapter的聊天机器人(使用NB进行场景分类)
- android 蓝牙聊天(主动连接和被动连接)
- Hive在查询中使用排序