[Spark] TaskMetrics指标收集

  1. Executor.TaskRunner.run --> serializedResult
    这里排除一些零值,序列化后发送
scala 复制代码
val accumUpdates = if (RESULT_DROP_ZEROES_PREFIXES.nonEmpty) {
  task.collectAccumulatorUpdates()
      .filterNot(acc => RESULT_DROP_ZEROES_PREFIXES
          .exists(acc.getClass.getName.startsWith(_)) && acc.isZero)
} else {
  task.collectAccumulatorUpdates()
}
val serializedDirectResult = ser.serialize(directResult)
  1. CoarseGrainedExecutorBackend.statusUpdate --> data
  2. CoarseGrainedSchedulerBackend.receive --> data.value
  3. TaskSchedulerImpl.statusUpdate --> serializedData: ByteBuffer
  4. TaskResultGetter.enqueueSuccessfulTask
    反序列化后得到 result,是一个TaskResult
scala 复制代码
val (result, size) = serializer.get().deserialize[TaskResult[_]](serializedData) 
  1. TaskSchedulerImpl.handleSuccessfulTask --> taskResult
  2. TaskSetManager.handleSuccessfulTask --> result.accumUpdates
  3. DAGScheduler.taskEnded --> accumUpdates
    发送Task完成消息到eventProcessLoop,等待处理
scala 复制代码
eventProcessLoop.post(CompletionEvent(task, reason, result, accumUpdates, metricPeaks, taskInfo))
  1. DAGScheduler.handleTaskCompletion --> event
  2. DAGScheduler.postTaskEnd
    这里通过fromAccumulators得到 taskMertics,最后发送 TaskEnd 事件
scala 复制代码
val taskMetrics: TaskMetrics = TaskMetrics.fromAccumulators(event.accumUpdates)

listenerBus.post(SparkListenerTaskEnd(event.task.stageId, event.task.stageAttemptId,
      Utils.getFormattedClassName(event.task), event.reason, event.taskInfo,
      new ExecutorMetrics(event.metricPeaks), taskMetrics))
相关推荐
IT研究室3 天前
最新大数据毕业设计选题推荐-基于大数据的信用等级数据分析与可视化-大数据-Spark-Hadoop-Bigdata
大数据·信息可视化·数据分析·spark·课程设计
计算机源码社4 天前
基于大数据技术的台北市住宅价格影响因素挖掘与可视化分析-基于Python与Hadoop的台北市住宅价格数据仓库构建与可视化
大数据·hadoop·python·数据分析·spark·毕业设计·数据可视化
IT研究室4 天前
最新大数据毕业设计选题推荐-基于大数据的物流快递数据分析与可视化-大数据-Spark-Hadoop-Bigdata
大数据·信息可视化·数据分析·spark·课程设计
IT研究室4 天前
最新大数据毕业设计选题推荐-基于大数据的鲜羊肉价格分析与可视化-大数据-Spark-Hadoop-Bigdata
大数据·信息可视化·数据分析·spark·课程设计
计算机源码社4 天前
基于Hadoop+Spark的乳腺癌病理数据可视化分析系统 基于K-Means聚类与PCA降维的乳腺癌形态特征分析系统
大数据·hadoop·python·数据分析·spark·毕业设计·数据可视化
躺柒5 天前
读数据架构知识体系指南01关系数据仓库(上)
数据仓库·架构·数据分析·spark·数据湖·关系数据库·企业数据仓库
IT研究室5 天前
最新大数据毕业设计选题推荐-基于大数据的天气预报预警数据可视化与分析-大数据-Spark-Hadoop-Bigdata
大数据·信息可视化·数据分析·spark·课程设计
IT研究室5 天前
最新大数据毕业设计选题推荐-基于大数据的图书借阅数据可视化分析系统-大数据-Spark-Hadoop-Bigdata
大数据·信息可视化·数据分析·spark·课程设计
姜穆澜6 天前
Spark SQL 完全学习指南
大数据·spark
计算机源码社6 天前
基于K-Means聚类的新生儿败血症临床分型与可视化分析系统 基于数据挖掘的新生儿败血症生命体征时序走势与关联性可视化研究
大数据·hadoop·python·数据挖掘·数据分析·spark·毕业设计