千锋教育-做有情怀、有良心、有品质的IT职业教育机构
位置:首页 > 行业动态

深圳大数据培训带来如何提升面试成功率的宝典

时间:2018-03-30 15:07:06  |  来源:千锋教育深圳校区  |  作者:千锋  

  金三银四,正值求职的黄金季节,求职大数据的小伙伴们,看过来了,千锋小编给你送福利了,千锋深圳大数据培训面试宝典已经为你备好,请各位小主儿过目。

图片千锋,1.jpg

  一、hive的使用,内外部表的区别,分区作用,UDF和Hive优化

  (1)hive使用:仓库、工具

  (2)hive内外部表:内部表数据永久删除,外部表数据删除后、其他人依然可以访问

  (3)分区作用:防止数据倾斜

  (4)UDF函数:用户自定义的函数(主要解决格式,计算问题),需要继承UDF类

  java代码实现

  class TestUDFHive extends UDF {

  public String evalute(String str){

  try{

  return "hello"+str

  }catch(Exception e){

  return str+"error"

  }

  }

  }

  (5)Hive优化:看做mapreduce处理

  a\排序优化:sort by 效率高于 order by

  b\分区:使用静态分区 (statu_date="20160516",location="beijin"),每个分区对应hdfs上的一个目录

  c\减少job和task数量:使用表链接操作

  d\解决groupby数据倾斜问题:设置hive.groupby.skewindata=true ,那么hive会自动负载均衡

  e\小文件合并成大文件:表连接操作

  f\使用UDF或UDAF函数:

  二、简要描述如何安装配置一个apache开原本hadoop,只描述即可,无需列出完整步骤,能列出步骤好。

  流程:

  1.创建hadoop用户

  2.修改IP

  3.安装JDK,并配置环境变量

  4.修改host文件映射

  5.安装SSH,配置无秘钥通信

  6.上传解压hadoop安装包

  7.配置conf文件夹下的hadoop-env.sh、core-site.xlmapre-site.xml、hdfs-site.xml

  8.配置hadoop的环境变量

  9.Hadoop namenode -format

  10.start-all

  三、MapReduce优化

  1. 任务调度

  I/O 方面:Hadoop 会尽量将 Map 任务分配给 InputSplit 所在的机器,以减少网

  络 I/O 的消耗。

  2.数据预处理与 InputSplit 的大小

  合理地设置 block块大小是很重要的调节方式。除此之外,也可以依靠合理地设置 Map 任务的数量来调节 Map 任务的数据输入。

  3. Map 和 Reduce 任务的数量

  当 Reduce 任务的数量是任务槽的 1.75 倍时,执行速度快的机器可以获得多

  的 Reduce 任务,因此可以使负载加均衡,以提高任务的处理速度。

  4. Combine 函数

  MapReduce 框架运行用户写的 combine 函数用于本地合并,这会大大减少网

  络 I/O 操作的消耗

  四、spark集群运算的模式

  Spark 有很多种模式,比较简单的就是单机本地模式,还有单机伪分布式模式,复杂的则运行在集群中,目前能很好的运行在 Yarn和 Mesos 中,当然 Spark 还有自带的 Standalone 模式,对于大多数情况 Standalone 模式就足够了,如果企业已经有 Yarn 或者 Mesos 环境,也是很方便部署的。

  standalone(集群模式):典型的Mater/slave模式,不过也能看出Master是有单点故障的;Spark支持ZooKeeper来实现 HA

  on yarn(集群模式): 运行在 yarn 资源管理器框架之上,由 yarn 负责资源管理,Spark 负责任务调度和计算

  on mesos(集群模式): 运行在 mesos 资源管理器框架之上,由 mesos 负责资源管理,Spark 负责任务调度和计算

  on cloud(集群模式):比如 AWS 的 EC2,使用这个模式能很方便的访问 Amazon的 S3;Spark 支持多种分布式存储系统:HDFS 和 S3

  五、spark streaming 读取kafka数据的两种方式

  这两种方式分别是:

  Receiver-base

  使用Kafka的高层次Consumer API来实现。receiver从Kafka中获取的数据都存储在Spark Executor的内存中,然后Spark Streaming启动的job会去处理那些数据。然而,在默认的配置下,这种方式可能会因为底层的失败而丢失数据。如果要启用高可靠机制,让数据零丢失,就必须启用Spark Streaming的预写日志机制(Write Ahead Log,WAL)。该机制会同步地将接收到的Kafka数据写入分布式文件系统(比如HDFS)上的预写日志中。所以,即使底层节点出现了失败,也可以使用预写日志中的数据进行恢复。

  Direct

  Spark1.3中引入Direct方式,用来替代掉使用Receiver接收数据,这种方式会周期性地查询Kafka,获得每个topic+partition的新的offset,从而定义每个batch的offset的范围。当处理数据的job启动时,就会使用Kafka的简单consumer api来获取Kafka指定offset范围的数据。

  以上五道大数据的经典面试题,各位小主先用着,未来小编会深度挖掘千锋深圳大数据分析培训讲师的满满大数据技术干货库,为大家谋福利!

上一篇:参加深圳大数据培训后要知道这些面试技巧
下一篇:参加深圳UI设计师培训如何 从你的选择开始

课程咨询

千锋开发者联盟QQ群

JavaEE学习交流群:343013298

HTML5学习技术交流群: 314548237

UI技术学习交流群:159532533

PHP学习交流群:517739045

  • 深圳科技园校区:深圳市南山区科苑南路高新技术产业园R3-B栋5层
    深圳大学城校区:深圳市南山区留仙大道1201号大学城创客小镇16栋2楼、3楼
    咨询电话:0755-86681178/9-801
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、好程序员特训营
  • 北京天丰利校区:北京市海淀区宝盛北里西区28号天丰利商城4层
    北京沙河校区:北京市昌平区沙阳路18号北京科技职业技术广场服务楼2层、南区服务楼2层
    咨询电话:400-654-7778 010-82790226/7-801
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训、好程序员特训营
  • 上海地址:上海市宝山区同济支路199号智慧七立方3号楼2-4层
    咨询电话:400-627-7899 021-65025129-601
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、好程序员特训营
  • 郑州地址:郑州市金水区纬五路21号河南教育综合楼6楼、7楼
    咨询电话:0371-55911950 400-654-7778
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训
  • 广州地址:广州市天河区元岗路310号智汇park创意园E座5层
    咨询电话:020-22119207 400-654-7778
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 大连地址:大连市高新园区软件园路2号B8座
    咨询电话:0411-39026086 400-654-7778
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 武汉地址:武汉市东新区光谷大道77号金融港B26栋9楼
    咨询电话:027-59905909 027-59905908 027-59905902
    面授课程:iOS课程培训、Android课程培训
  • 成都地址:成都市一环路西二段17号四川旅游青羊校区内
    咨询电话:028-83178771 028-61967740
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训、UI课程培训
  • 西安地址:西安市二环南路西段60号永安大厦4层
    咨询电话:029-85260160 029-85261030 029-85260960
    面授课程:iOS课程培训、Android课程培训、HTML5课程培训
  • 杭州地址:浙江省杭州市江干区九堡旺田书画城A座4层
    咨询电话:0571-86893632 010-82790226/7-801
    面授课程:iOS课程培训、Android课程培训
  • 青岛校区地址:青岛市市南区金坛路17号青岛职业技术南校区实训楼A4层
    咨询电话:0532-80910752/3 010-82790226/7-801
    面授课程:iOS课程培训、Android课程培训
  • 千锋学员专属客户端
    “锋向标”扫描下载

  • 千锋教育微信号
    扫描加好友

关闭