
Spark技术研究
文章平均质量分 65
天然呆的技术博客
纯天然的技术小呆呆
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spark RpcEnv
在SparkContext初始化环境时使用下面代码创建RpcEnvval rpcEnv = RpcEnv.create(actorSystemName, hostname, port, conf, securityManager, clientMode = !isDriver)创建RpcEnv时通过创建RpcEnvFactory(默认为netty)然后使用工厂创建RpcEnv,如下代原创 2016-05-18 10:32:41 · 2443 阅读 · 0 评论 -
Spark中的事件处理分析
一.当初始化SparkContext时,需要初始化Spark Env需要接受3个参数_env = createSparkEnv(_conf, isLocal, listenerBus)上文listenerBus实例是LiveListenerBus同时继承自AsynchronousListenerBus和SparkListenerBus,都属于ListenerBus的子类A.关于Listen原创 2016-05-18 10:32:08 · 1539 阅读 · 0 评论 -
Spark Streaming 作业调度流程
StreamingContext在实例化时候会创建DStreamGraph、JobGenerator、JobScheduler下面组件运行在Driver1.JobGenerator:通过timmer根据固定时间间隔(Batch Interval)不断的产生Job(其实此时的Job相当于java的Runnable类型实例),Job会提交给JobScheduler2.Job原创 2016-05-18 10:37:39 · 1681 阅读 · 0 评论 -
StreamingContext实例化过程
一.SparkStreaming实例化过程创建StreamingContext的方法有很多种,示例以SparkCon和任务执行间隔作为参数创建StreamingContextval ssc = new StreamingContext(conf,Seconds(3))1.检查SparkContext和CheckPoint,不能同时为空,否则抛出异常2.检查checkPo原创 2016-05-18 10:36:52 · 1808 阅读 · 0 评论 -
Spark作业调度
1.生成finalStagefinalStage是根据RDD依赖关系(广度优先)回溯形成的一种ResultStage,内部包含了当前stage的父stage,shuffleDependecy优先进行回溯,如果当前rdd含有shuffleDependecy则继续回溯,直到回溯到最初始的RDD,然后形成stage,如果期间有窄依赖则将RDD并入到当前stage直到遇到shuffleDepe原创 2016-05-18 10:35:46 · 543 阅读 · 0 评论 -
Spark中的Driver本质
spark-shellspark-submit --class org.apache.spark.repl.Mainspark-sqlspark-submit --class org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriverspark-thriftServerspark-submit -原创 2016-05-18 10:35:11 · 1687 阅读 · 0 评论 -
Spark 中的序列化
1.序列化常用于网络传输和数据持久化以便于存储和传输,Spark通过两种方式来创建序列化器val serializer = instantiateClassFromConf[Serializer]("spark.serializer", "org.apache.spark.serializer.JavaSerializer")logDebug(s"Using serializer: ${ser原创 2016-05-18 10:34:45 · 7082 阅读 · 0 评论 -
Spark Context
1.创建LiveListenerBus用于构建Spark事件处理模型private[spark] val listenerBus = new LiveListenerBus2.JobProgressListener创建并向listenerBus注册_jobProgressListener = new JobProgressListener(_conf)listenerB原创 2016-05-18 10:33:59 · 1197 阅读 · 0 评论 -
Spark env
1.给driver的分配corelocal => 1local[5] =>5local[*] =>当前进程能够给虚拟机分配的最大core数非本地模式下都为02.初始化 SecurityManager3.初始化RPCEnv,同时初始化Rpc工厂(默认为netty)然后使用工厂创建RpcEnv4.使用AkkaUtil创建ActorSystem5.初始化序原创 2016-05-18 10:33:24 · 389 阅读 · 0 评论 -
集合覆盖模型
集合覆盖模型(一)模型介绍 在这里,将采用集合覆盖模型进行营业厅选址的计算,集合覆盖模型的基础思想是用最小数量的变压器在规定的半径范围去覆盖所有的需求点。覆盖模型的数学模型为:,约束条件为:N——区域中的变压器全集合,N={1,2,…,n};M——区域中所需建设营业厅的候选点集合,M={1,2,…,m};di——第i个营业厅的需求量;Dj——营业厅j的原创 2016-05-18 11:07:55 · 32989 阅读 · 10 评论