logo资料库

传智播客大数据面试宝典.docx

第1页 / 共388页
第2页 / 共388页
第3页 / 共388页
第4页 / 共388页
第5页 / 共388页
第6页 / 共388页
第7页 / 共388页
第8页 / 共388页
资料共388页,剩余部分请下载后查看
第一章 分布式计算框架与资源调度
1.1分布式计算框架
1.1.1编程模型
1.inputformat
2.MaTask端的工作机制
3.shuffle的过程
4.reduceTask
5.outputformat
1.1.2特殊的组件partitioner与combiner
1.partitioner定义
2.map端的combine组件
1.1.3用mr进行数据的排序,然后求出topN
1.1.4MapReduce 求两个人的共同好友算法
1.2 分布式资源调度框架
1.2.1yarn的概念
1.2.2yarn的架构
1.2.3yarn的工作流程
1.2.4yarn的调度器 Scheduler
1. FIFO Scheduler
2. Capacity Scheduler
3.Fair Scheduler
1.3分布式文件存储系统
1.3.1 架构
1.3.2 原理
1.3.3 API
1.4 项目
1.4.1点击流日志模型
1.分析什么
2.确定数据源
确定收集信息
1)确定埋点代码
2)前端收集脚本
3)后端脚本
4)日志切分
3.确定采集方案
4. 确定三层架构
1)创建ODS层数据表
2)导入ODS层数据
3)生成ODS层明细宽表
5.模块开发---统计分析
1)流量分析
2)关键路径转化率分析(漏斗模型)
6 模块开发—结果导出
7 模块开发—数据可视化
相关面试题
1.4.2 推荐系统项目
1.5 相关面试题
第2章 数据分析及其步骤
2.1 数据分析定义
2.2 数据分析的作用
2.2.1现状分析
2.2.2原因分析
2.2.3预测分析
2.3数据分析基本步骤(重点)
2.3.1明确分析目的和思路
2.3.2数据收集
2.3.3数据处理
2.3.4数据分析
2.3.5数据展现(数据可视化)
2.3.6报告撰写
2.4 行业前景
2.4.1蓬勃发展的趋势
2.4.2数据分析师的职业要求
2.5大数据时代
2.5.1大数据的含义
2.5.2产生背景
2.5.3影响
1大数据
2大数据的精粹
3数据价值
4可视化
2.5.4特征
2.5.5思维变革
2.5.6第三个思维变革:
不是所有的事情都必须知道现象背后的原因,而是要让数据自己“发声”,即不是因果关系,而是相关关系。
2.5.7科技发展带来的挑战
2.5.8分布式系统
2.6面试题:
2.6.1分布式和集群有啥区别呢?
2.6.2集群 负载均衡 分布式 有什么区别?
2.6.3Web流量日志数据自定义采集
1 网站流量日志数据分析系统
2网站流量日志数据自定义采集
3.设计实现
4.环境部署
5.自定义采集数据实现
2.7 Hive
2.7.1 Hive的基本简介
1)Hive是什么?
2)Hive的源数据存储?
3)Hive与传统DB的区别?
2.7.2Hive数仓开发的基本流程。
1)从业务系统获取数据
2)数据存储
3)写sql开发需求
4)配置调度系统
5)导出数据&展示
2.7.3Hive sql 知识点。
1)DML&DDL
2)外表和内表
3)分区、分桶
4)UDF
2.8Hive面试题
2.8.1Hive常见
1)hive 的使用,内外部表的区别,分区作用, UDF 和 Hive 优化
2)使用 Hive 或者自定义 MR 实现如下逻辑
3)你们的数据是用什么导入到数据库的?导入到什么数据库?
4)你们业务数据量多大?有多少行数据?(面试了三家,都问这个问题)
5)你们写 hive 的 hql 语句,大概有多少条?
6)hive 跟 hbase 的区别是?
7)你们处理数据是直接读数据库的数据还是读文本数据?
8)你们提交的 job 任务大概有多少个?这些 job 执行完大概用多少时间?
9)reduce 后输出的数据量有多大?
10)你自己写过 udf 函数么?写了哪些?作用是什么?
11)你在项目中主要的工作任务是?
12)hive 底层与数据库交互原理
13)使用 Hive 进行手机流量统计
14)表大概有 2T 左右,对表数据转换
15)hive 有哪些保存元数据的方式,个有什么特点。
16)生产环境中为什么建议使用外部表?
17)如何用 hive 分析业务数据,将数据导入到 hive 中
18)你们数据库怎么导入 hive 的, 有没有出现问题
19)Hive 你们用的是外部表还是内部表, , 有没有写过 UDF,hive 的版本外部表和内部表的区别
20)一个Hadoop环境,整合了hbase和hive,是否有必要给HDFS和hbase都分别配置压缩策略
21)简述Hive中的虚拟列作用是什么?使用他的注意事项
基站逗留时间
22)你们数据库怎么导入 hive 的,有没有出现问题
23)Redis,传统数据库,hbase,hive 每个之间的区别(问的非常细)
24)Hive 你们用的是外部表还是内部表,有没有写过 UDF,hive 的版本外部表,udf,udaf
25)hive partition 分区分区表,动态分区
26)insert into 和 override write 区别?
27)假如一个分区的数据主部错误怎么通过 hivesql 删除 hdfs
28)请简述一下 Hadoop/MapReduce, Spark , Strom , Hive 的特点及适
29)Hive 的条件判断有几种?
30)请适用 hive 写出查询某网站日志中方位多页面 a 和页面 b 的用户数量的语句:
31)Orcal、hive、mysql 分页
32)Hive 中的排序方法有哪些
33)hive 和 hbase 方法:项目中采集的哪些指标,
34)你们提交的 job 任务大概有多少个?这些 job 执行完大概用多少时间?(面试了三家,都问这个问题
35)你在项目中主要的工作任务是?
36)一个网络商城
37)你认为用 java,streaming,pipe 方式开发 map/reduce ,各有哪些优点就用
38)hive 有哪些方式保存元数据,各有哪些优点
39)hive 内部表和外部表的区别
40)hive 底层与数据库交互原理
41)sqoop 在导入数据到 mysql 中,如何不重复导入数据,如果存在数据问题,sqoop 如何处理
42)pig , latin , hive 语法有什么不同
43)hive 如何调优
44)hive 如何控制权限
45)hive 能像关系型数据库那样建多个库吗?
46)假设公司要建一个数据中心,你会如何处理?
47)Hive 中的 metastore 用来做什么的?
48)hive 中的压缩格式 RCFile、TextFile、SequenceFile 各有什么区别?以上
49)你们的 hive 处理数据能达到的指标是多少?
50)Hive查询案例
51)给定 a、b 两个文件,各存放 50 亿个 url,每个 url 各占 64 字节,内存限制是 4G
52)有 10 个文件,每个文件 1G ,每个文件的每一行存放的都是用户的 query ,每个文件的 qu
53)有一个 1G 大小的一个文件,里面每一行是一个词,词的大小不超
54)海量日志数据,提取出某日访问百度次数最多的那个 IP。
55)在 2.5 亿个整数中找出不重复的整数,注 ,内存不足以容纳这 2.5 亿个整数。
56)海量数据分布在 100 台电脑中,想个办法高校统计出这批数据的 TOP10。
57)怎么在海量数据中找出重复次数最多的一个?
58)上千万或上亿数据(有重复),统计其中出现次数最多的钱 N 个数据。
59)1000 万字符串,其中有些是重复的,需要把重复的全部去掉,保留没有重复的字符串。
60)一个文本文件,大约有一万行,每行一个词,要求统计出其中最频繁出现的前 10 个词,
61)一个文本文件,找出前 10 个经常出现的词,但这次文件比较长,说是上亿行或十亿行,
62)100w 个数中找出最大的 100 个数。
63)ABC三个hive表,每个表中只有一列int类型且列名相同,求三个表中互不重复的数,比如表明:T_a
64)系统设计
65)什么是数据倾斜?hadoop框架的特性决定最怕数据倾斜
66)如何解决数据倾斜?实际上没有办法避免,这里的解决只是个别情况起效
67)Hive中JoinMapJoinGroup by的特点
68)Hive 你们用的是外部表还是内部表,有没有写过UDF,hive 的版本
69)Hive语句实现WordCount
70)共同朋友
71)简要描述数据库中的null,说出null在hive底层如何存储,并解释select a.* from
72)写出hive中spilt、coalesce及collect_list函数的用法(可举例)
73)写出text.txt文件放入hive中test表‘2017-12-12’分区的语句,test的分区字
74)hive中有一个表test,结构是create table arrays(x array
75)解释一下什么是数据倾斜,并说明在hive中如何避免数据倾斜。
76)学生表(students),有字段学号(id),姓名(name),性别(sex)等字段。课程表(cl
77)Hive是什么,以及适用场景,Hive与mysql关系,Hive与MapReduce关系,hive与
78)Hive中创建表有哪几种方式,其区别是什么?
79)Hive中的UDF函数有哪几种,你写了哪些?
80)一个100G的文件,内存只有4G,对其进行全排序,如何用普通java程序编写处理。先把文件中的wor
81)用hive实现 select a.key,a.value from a where a.key
82)sort by ,order by ,cluster by ,distribute by 代表什么意
83)Hive文件压缩格式有哪些,压缩效率如何
84)Hive的分组方式
85)数据库索引的创建、hive中join的问题
86)为什么spark on hive 来使用
87)Hive 的 UDF
88)Hiveserver2
89)Spark 的版本 hive 的版本 hadoop 版本
90)数据库表结构设计
91)Hive存储元数据的方式及特点
92)
93)Hive 内部表和外部表的区别?
94)hive 底层与数据库交互原理
95)使用 Hive 或者自定义 MR 实现如下逻辑
96)hive 如何权限控制?
97)hive 能像关系数据库那样,建多个库吗?
98)hive 实现统计的查询语句是什么?
99)生产环境中为什么建议使用外部表?
100)hadoop mapreduce 创建类 DataWritable 的作用是什么?
101)为什么创建类 DataWritable?
102)如何实现统计手机流量?
103)对比 hive 与 mapreduce 统计手机流量的区别?
104)如今有 10 个文件夹,每个文件夹都有 1000000 个 url.如今让你找出top1000000
105)hive 的物理模型跟传统数据库的不同
106)hive 底层与数据库交互原理
107)有一个 1G 大小的一个文件,里面每一行是一个词,词的大小不超过 16 字节,内存限制大小是 1M。
108)hive 中的压缩格式 RCFile、TextFile、SequenceFile 各有什么区别?以上
109)你们的 hive 处理数据能达到的指标是多少?
110)Hive分桶
111)Hive内部表和外部表的区别:
112)Hive中的UDF
113)常用的hive分析函数
114)join中出现数据倾斜优化
115)Hive中的mapjoin
116)hive bucket join
117)关于where和join的优化
118)Hive group by优化
119)hive的表优化
120)hive job的优化 并行化执行
121)hive job的优化本地化执行
122)hive job的优化job合并输入小文件
123)hive job的优化 job合并输出小文件
124)hive job的优化JVM重利用
125)hive job的优化压缩数据
126)Hive中的order by,sort by , distribute by , cluster b
127)Hive 数据块取样
128)Hive 分桶取样
129)insert into 和 override write区别
130)order by与sort by的区别
131)hive分区 如何将数据定义到哪一个分区中
132)HIVE 优化?
133)hive有哪些方式保存元数据,各有哪些特点
134)hive与hbase的区别
135)hive SQL语句中 select from where group by having orde
136)有文件dim_city.txt 如何加载dim_city表中
137)hive如何将下表table_1中的数据
138)HIVE数据库与ORACLE数据库有什么区别,目前HIVE数据库不支持哪些函数?
139)使用如下示例数据及数据说明情况,分别实现(1)该数据在HIVE库中建表,(2)数据导入到所建表中,(
140)编写HIVE自定义函数实现ORACLE数据库中的addmonths函数功能,然后封装到HIVE函数库
141)Hive的条件判断有几种?
142)请适用hive写出查询某网站日志中方位多页面a和页面b的用户数量的语句:
2.8.2海量数据处理方法
143)海量日志数据,提取出某日访问百度次数最多的那个 IP
144)搜索引擎会通过日志文件把用户每次检索使用的所有检索串都记录下来,每个查询串的长度为1-255 字节。
145)有一个 1G 过 大小的一个文件,里面每一行是一个词,词的大小不超过 16 字节,内存限制大小是1M
146)有 10 个文件 件,每个文件 1G ,每个文件的每一行存放的都是用户的 query ,每个文件的
147)给定 a.b 两个文件,各存放 50 亿个 url ,每个 url 各占 64 字节,内存限制是 4
148)在 2.5 亿个整数中找出不重复的整数,注,内存不足以容纳这 2.5 亿个整数
149)一个文本文件,大约有一万行,每行一个词,要求统计出其中最频繁出现的前 10 个词,请给出思想,给出时
150)有一千万条短信,有重复,以文本文件的形式保存,一行一条,有重复。 请用 5 分钟时间,找出重复
151)有20亿条数据,每条数据的大小在1K-1M不等,每条数据有一个唯一的u_int64的id,请设计一个
152)总结
2.9Hadoop HA
2.9.1知识点
1) Namenode HA
2) yarn HA
3) HA Hadoop搭建
2.9.2上课用图
1) 单点故障与”脑裂”
2) client的事务性操作对HA提供了支持
3) QJM
2.9.33、 面试题
1) hadoop 的 namenode 宕机,怎么解决?
2) Hadoop 节点分布
2.10Hadoop的联邦机制
2.10.1为什么会出现联邦?
2.10.2联邦的实现
2.10.3主要优点:
2.10.4配置:
2.10.5操作
2.11项目
2.11.1点击流日志模型
1分析什么
2确定数据源
3确定采集方案
1)在服务器上部署agent节点,修改配置文件
4确定三层架构
1)创建ODS层数据表
2)导入ODS层数据
3)生成ODS层明细宽表
5模块开发---统计分析
流量分析
关键路径转化率分析(漏斗模型)
6 模块开发—结果导出
7模块开发—数据可视化
2.11.2相关面试题
2.11.3推荐系统项目
第3章 Storm
3.1架构
3.1.1Nimbus
3.1.2Zookeeper
3.1.3supervisor
3.1.4worker
3.2编程模型
3.2.1Spout
3.2.2Bolt
3.2.3并行度
3.2.4消息不丢失
3.3Storm 物联网wifi项目
3.3.1wifi项目背景
3.3.22)数据来源(采集)
3.3.3集群规模配置
3.3.4数据处理流程
3.3.5数据计算流程
3.4storm实时看板案例
3.4.1需求分析
3.4.2确定数据源
3.4.3确定采集方案
3.4.4确定存储
3.4.5数据计算
3.4.6展现
3.5storm日志监控告警系统
3.5.1需求分析
3.5.2确定数据源
3.5.3确定采集方案
3.5.4确定存储
3.5.5数据计算
3.6Storm的框架
3.7面试题
1)公司技术选型可能利用storm 进行实时计算,讲解一下storm
2)storm 如果碰上了复杂逻辑,需要算很长的时间,你怎么去优化,怎么保证实时性
3)Spark Streaming 和 Storm 有何区别?
第4章 Kafka
4.1kafka的介绍
1什么是kafka?
2 kafka与传统消息系统的区别
1、在
2、在吞吐量,
3、在可用性方面,
4、在集群负载均衡方面
3 kafka与activeMQ的区别
4.2kafka的架构
kafka的组件介绍
partition分布
segment
offset
4.3kafka集群的安装与搭建
4.4kafkfa的原理
4.4.1数据生产分发策略
4.4.2 数据存储机制
4.4.3 消息不丢失机制
4.4.4消费者的负载均衡机制
4.4.5 kafka的命令行的使用
4.5kafka的API使用
4.6kafka与其他的整合使用
4.6.1 flume与kafka的整合
4.6.2 storm与kafka集成
旧版本的kafka与storm之间相互集成
新版本的kafka与storm1.1.1集成
4.6.3 Spark Streaming整合kafka实战
KafkaUtils.createDstream方式
KafkaUtils.createDstream实战
KafkaUtils.createDirectStream方式
KafkaUtils.createDirectStream实战
4.6.4 kafka与Hbase的集成使用
Kafka接收数据,并消费到Hbase数据库
第5章 HBASE数据库
5.1数据库 OLAP、OLTP的介绍和比较
5.2Hbase基础
什么是OLTP
什么是OLAP
分开设计与优化
5.2.1hbase数据库介绍
简介
HBase中的表的特点:
表结构逻辑视图
5.2.2hbase集群结构
5.2.3hbase集群搭建 (简易步骤)
5.2.4命令行演示
基本shell命令
5.2.5hbase代码开发(基本,过滤器查询)
1.基本增删改查java实现 –例子
2.过滤器查询 (基于scan)
5.2.6hbase内部原理
系统架构
5.2.7物理存储
1、整体结构
2、STORE FILE & HFILE结构
3、Memstore与storefile
4、HLog(WAL log)
5.2.8 寻址机制
1、寻址示意图
2、-ROOT-和.META.表结构
3、寻址流程
5.2.9读写过程
1、读请求过程:
2、写请求过程:
5.2.10Region管理
5.2.11Master工作机制
5.2.12HBase容错性
5.3Hbase高级应用
5.3.1建表高级属性
5.3.2
5.3.3rowkey长度原则
1.rowkey散列原则
2.rowkey唯一原则
5.3.4什么是热点
1)加盐
2)哈希
3)反转
4)时间戳反转
5.4 HBase性能优化完全版
5.4.1垃圾回收优化
5.4.2启用压缩,详情自行搜索,暂时未曾尝试,后面持续更新。
5.4.3优化Region拆分合并以及与拆分Region
5.4.44.客户端入库调优
5.4.5HBase配置文件
5.4.6HDFS优化部分
5.5大数据Hbase 面试题
hbase 的特点是什么
hbase如何导入数据
hbase的存储结构?
Hbase和hive 有什么区别
解释下hbase实时查询的原理
描述Hbase的rowKey的设计原则
列簇怎么创建比较好? (<=2)
描述Hbase中scan和get的功能以及实现的异同.
请详细描述Hbase中一个Cell 的结构
请描述Hbase中scan对象的setCache和setBatch 方法的使用.
简述 HBASE中compact用途是什么,什么时候触发,分为哪两种,有什么区别,有哪些相关配置参数
简述Hbase filter的实现原理是什么?结合实际项目经验,写出几个使用filter的场景
Hbase内部是什么机制
HBase宕机如何处理
第6章 spark
6.1什么是Spark
6.1.1Spark的特点及相对于MapReduce的优势
6.1.2Spark HA高可用部署
6.1.3Spark的角色
6.1.4Spark程序提交任务模式
6.1.5Spark-Shell
6.1.6在IDEA中编写WordCount程序
6.2Spark Streaming
6.2.1Spark Streming的特性
6.2.2Spark Streaming 对比 Storm
6.3算子操作
6.3.1Transformations
6.3.2OutputOperations
6.3.3Spark Streming编程实战
6.3.4SparkStreaming整合flume
6.3.5SparkStreaming整合Kafka
6.3.6Checkpoint
6.4Spark SQL
6.4.1几个知识点
1)Spark sql 的属性
2)DataFrame与RDD的优缺点
3)DataFrame、DataSet、RDD的区别
4)读取数据源创建DataFrame
5① 读取文本文件创建DataFrame
6② 读取json文件创建DataFrame
7③ 读取parquet列式存储格式文件创建DataFrame
6.4.2002 以编程方式执行Spark SQL查询
1)编写Spark SQL程序实现RDD转换成DataFrame
8① 通过反射推断Schema
9② 通过StructType直接指定Schema
2)编写Spark SQL程序操作HiveContext
6.4.3JDBC数据源
1)SparkSql从MySQL中加载数据
2)SparkSql将数据写入到MySQL中
6.5SparkRDD
6.5.1了解SparkRDD
1)什么是RDD
2)RDD的属性
3.为什么会产生RDD?
4)RDD在Spark中的地位及作用
6.5.2创建RDD
6.5.3RDD编程API
1RDD的算子分类
2Transformation
3Action
6.5.4RDD常用的算子操作
练习1:map、filter
练习2:flatMap
练习3:交集、并集
练习4:join、groupByKey
练习5:cogroup
练习6:reduce
练习7:reduceByKey、sortByKey
练习8:repartition、coalesce
6.5.5RDD的依赖关系
1RDD的依赖
2窄依赖
3宽依赖
4Lineage(血统)
6.5.6RDD的缓存
RDD缓存方式
6.5.7DAG的生成
什么是DAG
6.5.8Spark任务调度
1任务调度流程图
2 DAGScheduler
3TaskScheduler
6.6RDD容错机制之checkpoint
6.6.1checkpoint是什么
6.6.2checkpoint原理机制
6.6.3 Checkpoint常见面试问题
6.7Spark运行架构
6.7.1 Spark运行基本流程
6.7.2Spark运行架构特点
6.8开发调优
6.8.1 调优概述
6.8.2原则一:避免创建重复的RDD
6.8.3原则二:尽可能复用同一个RDD
6.8.4原则三:对多次使用的RDD进行持久化
对多次使用的RDD进行持久化的代码示例
Spark的持久化级别
如何选择一种最合适的持久化策略
6.8.5原则四:尽量避免使用shuffle类算子
Broadcast与map进行join代码示例
6.8.6原则五:使用map-side预聚合的shuffle操作
6.8.7原则六:使用高性能的算子
使用reduceByKey/aggregateByKey替代groupByKey
使用mapPartitions替代普通map
使用foreachPartitions替代foreach
使用filter之后进行coalesce操作
使用repartitionAndSortWithinPartitions替代repartition与
6.8.8原则七:广播大变量
广播大变量的代码示例
6.8.9原则八:使用Kryo优化序列化性能
6.8.10原则九:优化数据结构
6.9资源调优
6.9.1调优概述
6.9.2资源参数调优
num-executors
executor-memory
executor-cores
driver-memory
spark.default.parallelism
spark.storage.memoryFraction
spark.shuffle.memoryFraction
6.9.3资源参数参考示例
6.10数据倾斜调优
6.10.1调优概述
6.10.2数据倾斜发生时的现象
6.10.3数据倾斜发生的原理
6.10.4如何定位导致数据倾斜的代码
某个task执行特别慢的情况
某个task莫名其妙内存溢出的情况
6.10.5查看导致数据倾斜的key的数据分布情况
6.10.6数据倾斜的解决方案
解决方案一:使用Hive ETL预处理数据
解决方案二:过滤少数导致倾斜的key
解决方案三:提高shuffle操作的并行度
解决方案四:两阶段聚合(局部聚合+全局聚合)
解决方案五:将reduce join转为map join
解决方案六:采样倾斜key并分拆join操作
解决方案七:使用随机前缀和扩容RDD进行join
解决方案八:多种方案组合使用
6.11shuffle调优
6.11.1调优概述
6.11.2ShuffleManager发展概述
6.11.3HashShuffleManager运行原理
未经优化的HashShuffleManager
6.11.4SortShuffleManager运行原理
普通运行机制
bypass运行机制
6.11.5shuffle相关参数调优
spark.shuffle.file.buffer
spark.reducer.maxSizeInFlight
spark.shuffle.io.maxRetries
spark.shuffle.io.retryWait
spark.shuffle.memoryFraction
spark.shuffle.manager
spark.shuffle.sort.bypassMergeThreshold
spark.shuffle.consolidateFiles
6.12Spark面试题汇总
1.spark中的RDD是什么,有哪些特性
2.概述一下spark中的常用算子区别(map、mapPartitions、foreach、foreac
3.谈谈spark中的宽窄依赖
4.spark中如何划分stage
5.spark-submit的时候如何引入外部jar包
6.spark 如何防止内存溢出
7.spark中cache和persist的区别
8.简要描述Spark分布式集群搭建的步骤
9.spark中的数据倾斜的现象、原因、后果
10.如何解决spark中的数据倾斜问题
11.flume整合sparkStreaming问题
12.kafka整合sparkStreaming问题
6.12.1----简答题 ---- 网上资料 ---
1. Spark master使用zookeeper进行HA的,有哪些元数据保存在Zookeeper
2.Spark master HA 主从切换过程不会影响集群已有的作业运行?
3.Apache Spark有哪些常见的稳定版本
4.driver的功能是什么?
5.spark的有几种部署模式,每种模式特点?
6.Spark技术栈有哪些组件,每个组件都有什么功能,适合什么应用场景?
7.Spark中Work的主要工作是什么?
8.Spark为什么比mapreduce快?
9.简单说一下hadoop和spark的shuffle相同和差异?
10.Mapreduce和Spark的都是并行计算,那么他们有什么相同和区别
11.RDD机制?
12.spark工作机制?
13.spark的优化怎么做?
14.spark-submit的时候如何引入外部jar包
15.cache和pesist的区别
16.Spark使用parquet文件存储格式能带来哪些好处?
17.Spark如何自定义partitioner分区器?
6.12.2-------Spark on Yarn面试篇
1.描述Yarn执行一个任务的过程?
2.Yarn中的container是由谁负责销毁的,在Hadoop Mapreduce中contai
3.提交任务时,如何指定Spark Application的运行模式?
4.不启动Spark集群Master和work服务,可不可以运行Spark程序?
5.Spark中的4040端口由什么功能?
6.spark on yarn Cluster 模式下,ApplicationMaster和driver
7.如何使用命令查看application运行的日志信息
8.Spark on Yarn 模式有哪些优点?
9.谈谈你对container的理解?
10.运行在yarn中Application有几种类型的container?
11.Spark on Yarn架构是怎么样的?(要会画哦,这个图)
12.Executor启动时,资源通过哪几个参数指定?
13.一个task的map数量由谁来决定?
14.reduce后输出的数据量有多大?
15.你的项目提交到job的时候数据量有多大?
16.你们提交的job任务大概有多少个?这些job执行完大概用多少时间?
17.你们业务数据量多大?有多少行数据?
18.如何杀死一个正在运行的job
19.列出你所知道的调度器,说明其工作原理
6.12.3-------spark sql 面试篇
6.12.4----选择题 ---
6.12.5补充资料: (spark 集群standalone + spark on yarn)
Spark在不同集群中的运行架构
 Spark on Standalone运行过程
Spark on YARN运行过程
1.3 1.4 1.5 1.2 2.1 2.2 第一章 分布式计算框架与资源调度.................................................................................................8 分布式计算框架........................................................................................................................ 8 1.1 1.1.1编程模型 ...................................................................................................................................... 8 1.1.2特殊的组件 partitioner 与 combiner...............................................................................13 1.1.3用 mr 进行数据的排序,然后求出 topN...................................................................... 16 1.1.4MapReduce 求两个人的共同好友算法.........................................................................19 分布式资源调度框架............................................................................................................ 23 1.2.1yarn 的概念.............................................................................................................................. 23 1.2.2yarn 的架构.............................................................................................................................. 24 1.2.3yarn 的工作流程..................................................................................................................... 24 1.2.4yarn 的调度器 Scheduler ....................................................................................................26 分布式文件存储系统............................................................................................................ 28 1.3.1 架构...........................................................................................................................................28 1.3.2原理 .............................................................................................................................................29 1.3.3API................................................................................................................................................32 项目............................................................................................................................................. 47 1.4.1点击流日志模型......................................................................................................................47 1.4.2推荐系统项目 .......................................................................................................................... 56 相关面试题............................................................................................................................... 59 第 2 章 数据分析及其步骤.............................................................................................................................61 数据分析定义.......................................................................................................................... 61 数据分析的作用......................................................................................................................61 2.2.1现状分析 ....................................................................................................................................61 2.2.2原因分析 ....................................................................................................................................62 2.2.3预测分析 ....................................................................................................................................62 数据分析基本步骤(重点).............................................................................................. 62 2.3.1明确分析目的和思路............................................................................................................ 63 2.3.2数据收集 ....................................................................................................................................67 2.3.3数据处理 ....................................................................................................................................68 2.3.4数据分析 ....................................................................................................................................68 2.3.5数据展现(数据可视化)...................................................................................................69 2.3.6报告撰写 ....................................................................................................................................69 行业前景....................................................................................................................................70 2.4.1蓬勃发展的趋势......................................................................................................................70 2.4.2数据分析师的职业要求 ........................................................................................................71 大数据时代............................................................................................................................... 72 2.5.1大数据的含义 .......................................................................................................................... 72 2.5.2产生背景 ....................................................................................................................................72 2.5.3影响 .............................................................................................................................................73 2.5.4特征 .............................................................................................................................................75 2.5.5思维变革 ....................................................................................................................................76 2.5.6第三个思维变革: .................................................................................................................76 不是所有的事情都必须知道现象背后的原因,而是要让数据自己“发声”,即不是因 果关系,而是相关关系。............................................................................................................ 76 2.3 2.4 2.5
2.5.7科技发展带来的挑战............................................................................................................ 76 2.5.8分布式系统...............................................................................................................................77 面试题:....................................................................................................................................... 78 2.6.1分布式和集群有啥区别呢? .............................................................................................. 78 2.6.2集群 负载均衡 分布式 有什么区别?......................................................................... 79 2.6.3Web 流量日志数据自定义采集........................................................................................ 80 Hive..............................................................................................................................................89 2.7.1Hive 的基本简介.....................................................................................................................89 2.7.2Hive 数仓开发的基本流程。..............................................................................................90 2.7.3Hive sql 知识点。..................................................................................................................92 Hive 面试题.............................................................................................................................. 96 2.8.1Hive 常见...................................................................................................................................96 2.8.2海量数据处理方法 ...............................................................................................................153 Hadoop HA ............................................................................................................................ 166 2.9.1知识点......................................................................................................................................166 2.9.2上课用图 ................................................................................................................................. 176 2.9.33、 面试题............................................................................................................................ 177 Hadoop 的联邦机制........................................................................................................... 178 2.10.1...............................................................................................................为什么会出现联邦? 2.6 2.7 2.8 2.9 2.10 178 2.10.2..................................................................................................................................联邦的实现 178 2.10.3..................................................................................................................................主要优点: 179 2.10.4...........................................................................................................................................配置: 180 2.10.5................................................................................................................................................操作 2.11 181 项目...........................................................................................................................................182 2.11.1........................................................................................................................ 点击流日志模型 182 2.11.2..................................................................................................................................相关面试题 191 2.11.3.............................................................................................................................推荐系统项目 191 3.1 第 3 章 Storm ................................................................................................................................................... 194 架构...........................................................................................................................................195 3.1.1Nimbus.................................................................................................................................... 195 3.1.2Zookeeper.............................................................................................................................. 195 3.1.3supervisor ............................................................................................................................... 195 3.1.4worker...................................................................................................................................... 195 编程模型................................................................................................................................. 196 3.2.1Spout........................................................................................................................................196 3.2.2Bolt............................................................................................................................................196 3.2
3.3 3.4 3.5 3.6 3.7 3.2.3并行度......................................................................................................................................196 3.2.4消息不丢失.............................................................................................................................197 Storm 物联网 wifi 项目..................................................................................................... 197 3.3.1wifi 项目背景 ......................................................................................................................... 197 3.3.22)数据来源(采集)................................................................................................................. 198 3.3.3集群规模配置 ........................................................................................................................199 3.3.4数据处理流程 ........................................................................................................................199 3.3.5数据计算流程 ........................................................................................................................201 storm 实时看板案例........................................................................................................... 201 3.4.1需求分析 ................................................................................................................................. 201 3.4.2确定数据源.............................................................................................................................202 3.4.3确定采集方案 ........................................................................................................................202 3.4.4确定存储 ................................................................................................................................. 203 3.4.5数据计算 ................................................................................................................................. 203 3.4.6展现 ...........................................................................................................................................203 storm 日志监控告警系统..................................................................................................203 3.5.1需求分析 ................................................................................................................................. 203 3.5.2确定数据源.............................................................................................................................204 3.5.3确定采集方案 ........................................................................................................................204 3.5.4确定存储 ................................................................................................................................. 204 3.5.5数据计算 ................................................................................................................................. 205 Storm 的框架.........................................................................................................................205 面试题......................................................................................................................................206 第 4 章 Kafka.....................................................................................................................................................206 kafka 的介绍.......................................................................................................................... 206 kafka 的架构.......................................................................................................................... 209 kafka 集群的安装与搭建 ...................................................................................................212 kafkfa 的原理.........................................................................................................................215 kafka 的 API 使用................................................................................................................. 218 kafka 与其他的整合使用 ...................................................................................................222 第 5 章 HBASE 数据库...................................................................................................................................239 数据库 OLAP、OLTP 的介绍和比较............................................................................239 Hbase 基础.............................................................................................................................240 什么是 OLTP................................................................................................................................... 240 5.2.1hbase 数据库介绍................................................................................................................243 5.2.2hbase 集群结构.................................................................................................................... 246 5.2.3hbase 集群搭建 (简易步骤)............................................................................................ 247 5.2.4命令行演示.............................................................................................................................247 5.2.5...........................................................................hbase 代码开发(基本,过滤器查询) 4.1 4.2 4.3 4.4 4.5 4.6 5.1 5.2 248 5.2.6..........................................................................................................................hbase 内部原理 249 5.2.7...................................................................................................................................... 物理存储 251
5.2.8...................................................................................................................................... 寻址机制 255 5.2.9...................................................................................................................................... 读写过程 256 5.2.10.............................................................................................................................. Region 管理 258 5.2.11.....................................................................................................................Master 工作机制 259 5.2.12............................................................................................................................HBase 容错性 259 Hbase 高级应用....................................................................................................................260 5.3.1建表高级属性 ........................................................................................................................260 5.3.2HBase 的设计原则...............................................................................................................262 5.3.3rowkey 长度原则..................................................................................................................262 5.3.4什么是热点.............................................................................................................................263 1)加盐.............................................................................................................................................263 2)哈希.............................................................................................................................................264 3)反转.............................................................................................................................................264 4)时间戳反转...............................................................................................................................264 HBase 性能优化完全版......................................................................................................265 5.3 5.4 5.4.1垃圾回收优化 ........................................................................................................................265 5.4.2启用压缩,详情自行搜索,暂时未曾尝试,后面持续更新。 ...........................266 5.4.3优化 Region 拆分合并以及与拆分 Region..............................................................266 5.4.44.客户端入库调优............................................................................................................... 267 5.4.5HBase 配置文件 ..................................................................................................................268 5.4.6HDFS 优化部分....................................................................................................................272 5.5 6.1 大数据 Hbase 面试题........................................................................................................273 第 6 章 spark.....................................................................................................................................................279 什么是 Spark..........................................................................................................................279 6.1.1Spark 的特点及相对于 MapReduce 的优势...............................................................279 6.1.2Spark HA 高可用部署.........................................................................................................281 6.1.3Spark 的角色..........................................................................................................................282 6.1.4Spark 程序提交任务模式.................................................................................................. 283 6.1.5Spark-Shell.............................................................................................................................284 6.1.6在 IDEA 中编写 WordCount 程序.................................................................................. 285 Spark Streaming................................................................................................................... 285 6.2.1Spark Streming 的特性...................................................................................................... 285 6.2.2Spark Streaming 对比 Storm .........................................................................................285 6.2
6.3 6.4 6.5 算子操作................................................................................................................................. 285 6.3.1Transformations....................................................................................................................285 6.3.2OutputOperations............................................................................................................... 287 6.3.3Spark Streming 编程实战................................................................................................. 288 6.3.4SparkStreaming 整合 flume............................................................................................. 288 6.3.5SparkStreaming 整合 Kafka..............................................................................................288 6.3.6Checkpoint............................................................................................................................. 289 Spark SQL............................................................................................................................... 290 6.4.1几个知识点.............................................................................................................................290 6.4.2002 以编程方式执行 Spark SQL 查询......................................................................... 291 6.4.3JDBC 数据源.......................................................................................................................... 293 SparkRDD................................................................................................................................293 6.5.1...........................................................................................................................了解 SparkRDD 293 1)什么是 RDD..............................................................................................................................293 2)RDD 的属性..............................................................................................................................294 3.为什么会产生 RDD?...............................................................................................................295 4) RDD 在 Spark 中的地位及作用.......................................................................................295 6.5.2创建 RDD................................................................................................................................ 296 6.5.3RDD 编程 API........................................................................................................................ 297 6.5.4RDD 常用的算子操作.........................................................................................................299 6.5.5RDD 的依赖关系.................................................................................................................. 302 6.5.6RDD 的缓存............................................................................................................................303 6.5.7DAG 的生成........................................................................................................................... 304 6.5.8..........................................................................................................................Spark 任务调度 305 RDD 容错机制之 checkpoint........................................................................................... 307 6.6.1checkpoint 是什么...............................................................................................................307 6.6.2checkpoint 原理机制.......................................................................................................... 307 6.6.3Checkpoint 常见面试问题................................................................................................314 Spark 运行架构.....................................................................................................................318 6.7.1Spark 运行基本流程............................................................................................................318 6.7.2.................................................................................................................Spark 运行架构特点 6.6 6.7 6.8 319 开发调优................................................................................................................................. 324 6.8.1........................................................................................................................................调优概述 324 6.8.2......................................................................................... 原则一:避免创建重复的 RDD 324 6.8.3.....................................................................................原则二:尽可能复用同一个 RDD 325 6.8.4......................................................................原则三:对多次使用的 RDD 进行持久化 326 6.8.5..........................................................................原则四:尽量避免使用 shuffle 类算子
328 6.8.6原则五:使用 map-side 预聚合的 shuffle 操作.......................................................329 6.8.7................................................................................................ 原则六:使用高性能的算子 331 6.8.8.............................................................................................................. 原则七:广播大变量 332 6.8.9...............................................................................原则八:使用 Kryo 优化序列化性能 333 6.8.10.......................................................................................................原则九:优化数据结构 6.9 333 资源调优................................................................................................................................. 334 6.9.1......................................................................................................................................调优概述 334 6.9.2............................................................................................................................ 资源参数调优 336 6.9.3...................................................................................................................资源参数参考示例 339 6.10 数据倾斜调优........................................................................................................................339 6.10.1...................................................................................................................................调优概述 339 6.10.2.......................................................................................................数据倾斜发生时的现象 339 6.10.3........................................................................................................... 数据倾斜发生的原理 340 6.10.4.........................................................................................如何定位导致数据倾斜的代码 341 6.10.5................................................................ 查看导致数据倾斜的 key 的数据分布情况 344 6.10.6........................................................................................................... 数据倾斜的解决方案 6.11 344 shuffle 调优............................................................................................................................ 356 6.11.1...................................................................................................................................调优概述 356 6.11.2..................................................................................................... ShuffleManager 发展概述 357 6.11.3........................................................................................... HashShuffleManager 运行原理 357 6.11.4............................................................................................. SortShuffleManager 运行原理 358 6.11.5.............................................................................................................. shuffle 相关参数调优 6.12 360 Spark 面试题汇总................................................................................................................ 363 1. spark 中的 RDD 是什么,有哪些特性..............................................................................363 2. 概 述 一 下 spark 中 的 常 用 算 子 区 别 ( map 、 mapPartitions 、 foreach 、
foreachPartition).........................................................................................................................363 3. 谈谈 spark 中的宽窄依赖..................................................................................................... 364 4. spark 中如何划分 stage......................................................................................................... 364 5. spark-submit 的时候如何引入外部 jar 包.......................................................................364 6. spark 如何防止内存溢出...................................................................................................... 365 7. spark 中 cache 和 persist 的区别........................................................................................ 365 8. 简要描述 Spark 分布式集群搭建的步骤 .........................................................................365 9. spark 中的数据倾斜的现象、原因、后果.......................................................................365 10. 如何解决 spark 中的数据倾斜问题................................................................................366 11. flume 整合 sparkStreaming 问题......................................................................................367 12. kafka 整合 sparkStreaming 问题...................................................................................... 369 6.12.1........................................................................................----简答题 ---- 网上资料 --- 371 6.12.2............................................................................................. -------Spark on Yarn 面试篇 376 6.12.3.......................................................................................................-------spark sql 面试篇 380 6.12.4........................................................................................................................ ----选择题 --- 380 6.12.5............................................... 补充资料: (spark 集群 standalone + spark on yarn) 382
第一章 分布式计算框架与资源调度 1.1 分布式计算框架 1.1.1 编程模型 1. inputformat 在 MapReduce 程序的开发过程中,往往需要用到 FileInputFormat 与 TextInputFormat ,我 们会发 现 TextInputFormat 这个 类继承 自 FileInputFormat , FileInputFormat 这 个 类 继 承 自 InputFormat , InputFormat 这个类会将文件 file 按照逻辑进行划分,划分成的每一 个 split 切片将会被分配给一个 Mapper 任务,文件先被切分成 split 块, 而后每一个 split 切片对应一个 Mapper 任务 FileInputFormat 的划分机制: A. 简单地按照文件的内容长度进行切片 B. 切片大小,默认等于 block 大小
分享到:
收藏