// // // //
上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 41 下一页

2019年12月17日

摘要: 本文旨在解析 spark on Yarn 的内存管理,使得 spark 调优思路更加清晰 内存相关参数 spark 是基于内存的计算,spark 调优大部分是针对内存的,了解 spark 内存参数有也助于我们理解 spark 内存管理 spark.driver.memory:默认 512M spar 阅读全文
posted @ 2019-12-17 10:57 努力的孔子 阅读(2095) 评论(0) 推荐(0) 编辑
 

2019年12月16日

摘要: 执行如下代码时报错 # encoding:utf-8 from pyspark import SparkConf, SparkContext from pyspark.sql import SparkSession conf = SparkConf().setMaster('yarn') sc = 阅读全文
posted @ 2019-12-16 10:54 努力的孔子 阅读(4120) 评论(0) 推荐(0) 编辑
 
摘要: 问题描述与分析 题目中的问题大致可以描述为: 由于某个 Executor 没有按时向 Driver 发送心跳,而被 Driver 判断该 Executor 已挂掉,此时 Driver 要把 该 Executor 上执行的任务发送给另外一个 Executor 重新执行; 默认等待时长为 spark.n 阅读全文
posted @ 2019-12-16 10:45 努力的孔子 阅读(3958) 评论(0) 推荐(0) 编辑
 

2019年12月14日

摘要: spark on yarn 的执行过程在 yarn RM 上无法直接查看,即 http://192.168.10.10:8088,这对于调试程序很不方便,所以需要手动配置 配置方法 1. 配置 spark-defaults.conf cp spark-defaults.conf.template s 阅读全文
posted @ 2019-12-14 17:24 努力的孔子 阅读(3973) 评论(0) 推荐(0) 编辑
 

2019年12月13日

摘要: 在集群上运行 spark 时候,对 RDD 进行 foreach(print) 并没有打印任何内容,这是怎么回事呢? 这是因为 RDD 运行在各个 worker 上,foreach 是对 各个 worker 上的 RDD partition 进行操作,要打印也是打印在 worker 终端,所以驱动节 阅读全文
posted @ 2019-12-13 16:06 努力的孔子 阅读(922) 评论(0) 推荐(1) 编辑
 
摘要: 在运行 spark 程序时,出于某种原因,我想停止运行,狂按 ctrl+c 不一定起作用 以下两种情况是不好关闭的 1. cluster 运行模式 2. SparkStreaming 程序 本文旨在收集关闭这些程序的小技巧 1. 在程序中监听某个文件,如果文件存在,即停止运行 如果我们想停止程序,在 阅读全文
posted @ 2019-12-13 16:02 努力的孔子 阅读(871) 评论(0) 推荐(0) 编辑
 

2019年12月11日

摘要: 每一个 spark job 根据 shuffle 划分 stage,每个 stage 形成一个或者多个 taskSet,了解了每个 stage 需要运行多少个 task,有助于我们优化 spark 运行 task 数 首先需要了解以下概念: RDD,弹性分布式数据集,多个 partition; sp 阅读全文
posted @ 2019-12-11 15:15 努力的孔子 阅读(1977) 评论(0) 推荐(0) 编辑
 
摘要: 首先来看 MapReduce 流程图 一个 map,一个 reduce,中间靠 shuffle 连接,shuffle 左边被划分到 map,右边被划分到 reduce InputFormat input 是个文件,进入 mapper 后变成一行一行,如何实现的呢? 在 hadoop 中实现的方法叫 阅读全文
posted @ 2019-12-11 10:11 努力的孔子 阅读(528) 评论(0) 推荐(0) 编辑
 

2019年12月10日

摘要: 在生产环境中,spark 部署方式一般都是 yarn-cluster 模式,本文针对该模式进行讲解,当然大体思路也适用于其他模式 基础概念 一个 spark 应用包含 job、stage、task 三个概念 job:以 action 方法为界,一个 action 触发一个 job stage:它是 阅读全文
posted @ 2019-12-10 11:25 努力的孔子 阅读(615) 评论(0) 推荐(0) 编辑
 

2019年12月9日

摘要: 我们知道 RDD 是分区的,但有时候我们需要重新设置分区数量,增大还是减少需要结合实际场景,还有可以通过设置 RDD 分区数来指定生成的文件的数量 重新分区有两种方法:repartition and coalesce 先看源代码 def repartition(self, numPartitions 阅读全文
posted @ 2019-12-09 15:55 努力的孔子 阅读(699) 评论(0) 推荐(0) 编辑
 
上一页 1 ··· 18 19 20 21 22 23 24 25 26 ··· 41 下一页