Spark
张之海
硕士毕业于东北大学,现就职于北京某猫头鹰公司,大数据工程师职位。
展开
-
Spark性能优化—基础篇
内容学习自美团技术团队和马中华老师,向前辈致敬。1 Spark开发中性能优化的基本原则避免创建重复的RDDval rdd1 = sc.textFile("hdfs://192.168.0.1:9000/hello.txt")rdd1.map(...)val rdd2 = sc.textFile("hdfs://192.168.0.1:9000/hello.txt")rdd2.r...原创 2020-02-25 18:09:15 · 419 阅读 · 0 评论 -
SchedulerBackend详解及源码介绍
SchedulerBackend涉及到Netty的知识,笔者尚未理解,先写一部分,后面会持续补充。1 SchedulerBackend是什么?首先看SchedulerBackend在Spark中的使用。如源码1,最初,在SparkContext.scala中存在一个SchedulerBackend的实例,在createScheduler()方法中同时创建了两个实例scheduler和back...原创 2020-02-23 12:04:00 · 1025 阅读 · 0 评论 -
TaskScheduler详解及源码介绍
1 createTaskScheduler创建TaskScheduler的源代码为SparkContext.createTaskScheduler,如下所示。该方法会根据master的配置匹配部署模式,每种部署模式中都会创建两个类(TaskSchedulerImpl、SchedulerBackend)的实例,只是TaskSchedulerImpl都相同,SchedulerBackend不同。/...原创 2020-02-22 19:57:06 · 2642 阅读 · 1 评论 -
Spark的任务执行流程及对应源码
1 将任务打成jar包2 调用spark-submit脚本提交到集群上运行3 运行sparkSubmit的main方法,在这个方法中通过反射的方式创建我们编写的主类的实例对象,然后调用main方法,开始执行我们的代码。(Spark程序中的driver就运行在sparkSubmit进程中)运行SparkSubmit的main方法//源码来自:SparkSubmit.scala ove...原创 2020-02-21 14:16:04 · 528 阅读 · 0 评论 -
SparkContext的初始化
SparkContext的初始化步骤如下:1 创建Spark执行环境SparkEnv1.2 什么是SparkEnv?SparkEnv是Spark的执行环境对象,其中包括许多与Executor执行相关的对象,所以SparkEnv存在于需要创建Executor的进程中。那么需要创建Executor的进程有哪些呢?在local模式下,Driver进程中会创建Executor。在local-c...原创 2020-02-19 11:43:55 · 1391 阅读 · 0 评论 -
Spark的产生
Spark与MapReduce 的对比减少磁盘IOMapReduce:基于磁盘。mapper的结果会存储到磁盘,reducer从磁盘读取数据,结果再存储到磁盘。Spark:基于内存。中间结果存储到内存中。(实在存不下,才会将一部分存储到磁盘中)增加并行度MapReduce:包含mapTask和reduceTask,每个Task便是一个进程。Spark:每个Task是一个线程。所以S...原创 2019-12-27 22:31:25 · 294 阅读 · 0 评论 -
CentOS 环境下 Spark下载安装
下载安装教程可随意百度,例如:Spark介绍与安装详解(Centos7)此处着重强调两个Bug:1 具体的error名称忘记了原因是jdk版本过低,Spark2.4需要对应jdk1.8及以上才行。2[root@centos spark-2.4.0-bin-hadoop2.7]# ./bin/pysparkPython 3.7.0 (default, Feb 27 2019, 17:29...原创 2019-02-28 17:42:11 · 602 阅读 · 0 评论 -
在CentOS环境下,使用PyCharm进行Spark开发
1 建立PyCharm与Spark的连接在Run->Edit Configuration中添加环境变量其中PYTHONPATH和SPARK_HOME的值请前往/etc/profile文件中查看,这两个值是在配置Spark的环境时写入的。2 实现代码自动补全将 Spark中的bin/pyspark文件,复制到Python安装目录下的python/lib/python3.7/site...原创 2019-02-28 19:45:44 · 553 阅读 · 0 评论