1.foreach

    val list = new ArrayBuffer()
myRdd.foreach(record => {
list += record
})

2.foreachPartition

    val list = new ArrayBuffer
rdd.foreachPartition(it => {
it.foreach(r => {
list += r
})
})

说明:

foreachPartition属于算子操作,可以提高模型效率。比如在使用foreach时,将RDD中所有数据写Mongo中,就会一条数据一条数据地写,每次函数调用可能就会创建一个数据库连接,此时就势必会频繁地创建和销毁数据库连接,性能是非常低下;但是如果用foreachPartitions算子一次性处理一个partition的数据,那么对于每个partition,只要创建一个数据库连接即可,然后执行批量插入操作,此时性能是比较高的。

参考官网的说明:

https://spark.apache.org/docs/latest/streaming-programming-guide.html

最新文章

  1. EasyAR 开发教程系列1--小试牛刀
  2. 症状解决,原因不详的用非默认管理权限账户登录COM注册成功但找不到类型问题
  3. JAVA线程同步辅助类CyclicBarrier循环屏障
  4. QInputDialog 使用方法
  5. Mysqldump参数大全(转)
  6. MailOtto 实现完美预加载以及源码解读
  7. iOS工程结构
  8. PHP发红包程序
  9. Vim 实用技术,第 2 部分: 常用插件(转)
  10. app 转caf 音频 代码
  11. awk学习点滴
  12. Wannafly交流赛1(施工中)
  13. Get-CrmSetting返回Unable to connect to the remote server的解决办法
  14. [ZJOI2019]麻将(动态规划,自动机)
  15. Notepad++编写运行python程序
  16. linux服务器进程信息查看命令
  17. Codeforces 749C. Voting 模拟题
  18. 手机端点击复制链接到剪切板(以及PC端)
  19. “全栈2019”Java第九十四章:局部内部类详解
  20. 海康解码器对接总结(java 版)

热门文章

  1. 等价类计数:Burnside引理 & Polya定理
  2. VMware虚拟机安装Mac OS X 10.12
  3. CentOS7系统服务管理systemctl
  4. 进制-Iterative-进制转换
  5. OpenCV-Python 理解K近邻 | 五十三
  6. TensorBoard中HISTOGRAMS和DISTRIBUTIONS图形的含义
  7. C# 添加、修改、删除PPT中的超链接
  8. SpringCloud微服务架构和SOA架构
  9. C 2010年笔试题
  10. Redis这些知识你知道吗?