Spark
-
spark.storage.memoryFraction 参数的含义,实际生产中如何调优?
1)用于设置 RDD 持久化数据在 Executor 内存中能占的比例,默认是 0.6,,默认 Executor 60%的内存,可以用来保存持久化的 RDD 数据。根据你选择的不同...
-
Sort-based shuffle 的缺陷?
1)如果 mapper 中 task 的数量过大,依旧会产生很多小文件,此时在shuffle 传递数据的过程中 reducer 段,reduce 会需要同时大量的记录进行反序列化,...
-
不需要排序的 hash shuffle 是否一定比需要排序的 sort shuffle 速 度快?
不一定,当数据规模小,Hash shuffle 快于 Sorted Shuffle 数据规模大的时候;当数据量大,sorted Shuffle 会比 Hash shuffle 快很...
-
Spark 应用程序的执行过程是什么?
1)构建 Spark Application 的运行环境(启动 SparkContext),SparkContext 向资源管理器(可以是 Standalone、Mesos 或 Y...
-
介绍 parition 和 block 有什么关联关系?
1)hdfs 中的 block 是分布式存储的最小单元,等分,可设置冗余,这样设计有一部分磁盘空间的浪费,但是整齐的 block 大小,便于快速找到、读取对应的内容; 2)Spar...
-
Spark 使用 parquet 文件存储格式能带来哪些好处?
1)如果说 HDFS 是大数据时代分布式文件系统首选标准,那么 parquet 则是整个大数据时代文件存储格式实时首选标准。 2)速度更快:从使用 spark sql 操作普通文件...
-
谈谈你对 container 的理解?
1)Container 作为资源分配和调度的基本单位,其中封装了的资源如内存,CPU,磁盘,网络带宽等。 目前 yarn 仅仅封装内存和 CPU 2)Container 由 App...
-
Spark on Yarn 模式有哪些优点?
1)与其他计算框架共享集群资源(Spark 框架与 MapReduce 框架同时运行,如果不用 Yarn 进行资源分配,MapReduce 分到的内存资源会很少,效率低下);资源按...
-
描述 Yarn 执行一个任务的过程?
1)客户端 client 向 ResouceManager 提交 Application,ResouceManager 接受Application 并根据集群资源状况选取一个 no...
-
介绍一下 join 操作优化经验?
join 其实常见的就分为两类: map-side join 和 reduce-side join。当大表和小表 join 时,用 map-side join 能显著提高效率。将多...
-
Spark 为什么要持久化,一般什么场景下要进行 persist 操作?
spark 所有复杂一点的算法都会有 persist 身影,spark 默认数据放在内存,spark 很多内容都是放在内存的,非常适合高速迭代,1000 个步骤只有第一个输入数据,...
-
Spark 的数据本地性有哪几种?
Spark 中的数据本地性有三种: (1)PROCESS_LOCAL 是指读取缓存在本地节点的数据 (2)NODE_LOCAL 是指读取本地节点硬盘数据 (3)ANY 是指读取非本...
-
Spark 的 shuffle 过程?
从下面三点去展开 (1)shuffle 过程的划分 (2)shuffle 的中间结果如何存储 (3)shuffle 的数据如何拉取过来
-
RDD 有哪些缺陷?
(1)不支持细粒度的写和更新操作(如网络爬虫),spark 写数据是粗粒度的。所谓粗粒度,就是批量写入数据,为了提高效率。但是读数据是细粒度的也就是说可以一条条的读。 (2)不支持...