Spark 总复习
- 一、基础题
- 二、简答题
-
- 1、论述Spark与Hadoop的区别
- 2、简述Spark集群的基本运行流程
- 3、论述批量计算、流式计算、实时计算、离线计算的区别
- 4、简述spark的容错机制
- 5、论述RDD的五大特征
-
- 1)A list of partitions
- 2)A function for computing each split
- 3)A list of dependencies on other RDDs
- 4)Optionally, a Partitioner for key-value RDDs (e.g. to say that the RDD is hash-partitioned)
- 5)Optionally, a list of preferred locations to compute each split on (e.g. block locations for an HDFS file)
- 6、简述如何在Spark中划分Stage
- 7、简述Spark Streaming的工作原理
一、基础题
1、Scala 语言的特性包含面向对象编程、函数式编程、静态类型、可扩展、可交互操作
2、Scala 中获取元祖中的值是通过下划线加脚标来获取的
3、Scala 中,模式匹配是由关键字match和case组成的
4、Scala 中提供的常见数据结构有数组、元祖、集合
5、在 Scala 中使用case关键字来定义的类被称为样例类
6、在 Scala 中使用object关键字创建的对象为单例对象
7、在 Scala 中Trait(特质) 的功能类似于Java中的接口
8、Spark 生态系统主要包括Spark Core、Spark SQL、Spark Streaming、MLib、GraphX以及独立调度器
9、Spark 的部署模式分为本地单机模式和集群模式,集群模式又分为Standalone模式、Mesos模式、Yarn模式
10、Spark 运行框架主要是由SparkContext、Cluster Manager、Worker组成
11、Spark 的特点,速度快、易用性、通用性、兼容性
12、Spark 是基于内存计算的大数据并行计算框架
13、配置 Spark 集群时,需要修改配置文件spark-env.sh、profile、slaves
14、RDD 是一个容错的并行的数据结构,本质为分布式的数据集合
15、创建 RDD 的方法是textFile和parallelize
16、RDD 采用了惰性调用,在 RDD 的处理过程中,真正的计算发生在RDD 的 “行动” 操作
17、RDD 的转换算子: filter(func)、map(func)、flatmap(func)、groupByKey(func)、reduceByKey(func)
18、RDD 的分区原则: Local模式下,分区的个数尽量等同于集群中 CPU 的核数,Standalone模式或者Yarn模式下,分区数"在集群中所有的 CPU 核数总和"与"2" 这两者中较大值为默认值,Mesos模式下,默认的分区数是8
19、RDD 的依赖关系分为宽依赖和窄依赖
20、RDD 持久化机制的存储级别默认的是MEMORY_ONLY
21、RDD 持久化操作有两个方法分别为cache() 方法和persist() 方法
22、RDD 提供了两种故障恢复的方式,分别是血统方式和设置检查点方式
23、消息传递模式分为点对点消息传递模式和发布订阅式消息传递模式