- 博客(10)
- 资源 (4)
- 收藏
- 关注
原创 Spark DAG 执行流程
文章目录Action 启动程序执行DAGScheduler.scala 提交Job 执行根据Job创建Stage DAG图Stage执行结束Task 的调度和执行Action 启动程序执行 // Dataset.scala // scalastyle:off println def show(numRows: Int, truncate: Boolean): Unit = if (t...
2019-05-30 18:45:38 905
原创 Spark SQL 程序调度执行框架(一)
NodeManager 启动ExecutorShell启动脚本NodeManagerdefault_container_executor.shbash -c ‘java ..CoarseGrainedExecutorBackend’ --> 启动Executor 接收task计算任务bash -c ‘java ..ExecutorLauncher’ --> 这里应该是直接奔着...
2019-05-30 18:33:53 1052
原创 Spark 读取和使用Hive Permanent Function 原理
Spark Function RegisterSpark 2.* UDF查找过程// Spark 程序启动object SparkSubmit : main(args) 0 = "--class" 1 = "org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver" 2 = "spark-internal"c...
2019-05-30 18:22:27 704
原创 ORC文件存储格式和数据写入过程
文章目录ORC 文件格式,配置参数及相关概念ORC 文件格式UML类图OrcFile writer 创建OrcFile Writer 配置参数相关概念动态数组 DynamicIntArray 和 DynamicByteArray初始化chunk 扩容OrcFile writer的 write()方法 写数据WriterImpl addRow程序入口StringTreeWriter : void w...
2019-05-16 18:05:54 7753
原创 StandBy NameNode 合并并回传FSImage
文章目录启动StandbyCheckpointerdoCheckpointsave FSImage文件启动独立线程,SNN 向NN PUT FSImageImageServlet 接收 FSImage启动StandbyCheckpointer// 接上篇StandbyState public void enterState(HAContext context)NameNodeHAConte...
2019-05-09 20:33:14 353
原创 Hadoop HDFS HA 状态切换源码
文章目录NameNode启动进入StandBy StateZKFC 进程监控和切换 NameNode HA State启动 HDFS ZKFC 服务启动 HealthMonitor服务NameNodeRpcServerdoHealthChecks()ActiveStandbyElector 和 ActiveStandbyElectorCallbackzkClient 操作异步方法回调Elector...
2019-05-09 20:13:09 966
原创 HDFS NAMENODE QJM HA方案实现-1
文章目录JournalNodeQJM 方案对象实现过程确定 EditsDirs实例 FSImage 和 FSEditLogNameNode服务启动和journalSet 实例初始化journalSet 初始化JournalManager / QuorumJournalManager 初始化AsyncLoggerSetclass IPCLoggerChannel implements AsyncL...
2019-05-08 19:06:12 1741
原创 Hadoop Metrics2实现原理
Hadoop Metrics2的实现应该是在14年左右就已经非常成熟了,研究的人也比较多了。一个出现很久的东西,并非没有学习价值。如Metrics2 和之前的Metrics 一代做了哪些改进?如果我们自己设计一套Metrics信息,哪些是可以借鉴的地方?所有Source 和Sink全部是可配置的(和我们常见的Log4j配置一样),这样可以在不修改源码的情况下,自定义Metrics的监控Met...
2019-05-03 22:14:42 1830
原创 Spark是如何实现远程Thread Dump 的?
问题研究入口还是从web页面ExecutorThreadDumpPage入手,提供ThreadDump的入口在SparkContext的getExecutorThreadDump方法。// 1. 查看Executor Thread页面入口,通过 executorId 获取ThreadDump,private[ui] class ExecutorThreadDumpPage( paren...
2019-05-03 22:04:18 1691
原创 Spark Metrics实现原理
Spark 任务的Metrics 是通过Spark中的accumulator来辅助实现的。accumulator 定义// 1.1 定义 accumulator来收集 task 运行统计信息,包括 runTime,cpuTime,GCTime等class TaskMetrics private[spark] () extends Serializable { // Each metri...
2019-05-03 21:53:18 1853
Java做的文本编辑器
2009-07-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人