Hadoop 之面试题
颜色区别: 蓝色:hive,橙色:Hbase。黑色hadoop
请简述hadoop怎样实现二级排序.
你认为用Java,Streaming,pipe 方式开发map/reduce,各有哪些优缺点:
6. 请列出在你以前工作中所使用过的开发map /reduce的语言
java:
scala:
python:
shell:
7.当前日志采样格式为
a,b,c,d
b,b,f,e
a,a,c,f
请用最熟悉的语言编写一个map/reduce 程序,计算第四列每个元素出现的个数:
14.某个目录下有两个文件a.txt和b.txt,文件格式为(ip username)例如:
a.txt
127.0.0.1 zhangsan
127.0.0.1 wangxiaoer
127.0.0.2 lisi
127.0.0.3 wangwub.txt
127.0.0.4 lixiaolu
127.0.0.1 lisi每个文件至少有100万行,请使用linux命令行完成如下工作:
a. 两个文件名各自的ip数,以及总ip 数
b.出现在b.txt而没有出现在a.txt的ip
c.每个username出现的次数以及每个username 对应的ip数
30.hbase flush的过程
35.sqoop 在导入数据到mysql 中,如何让数据不重复导入?如果存在
数据问题,sqoop 如何处理?
41.MapReduce开发能力
请参照wordcount实现一个自己的mapreduce,需求为:
a 输入文件格式:
xxx,xxx,xxx,xxx,xxx,xxx,xxx
b 输出文件格式:
xxx,20
xxx,30
xxx.40
c 功能:根据命令行参数统计输入文件中指定关键字出现的次数,并展示出来
例如:hadoop jar xxxxx.jar keywordcount xxx,xxx,xxx,xxx(四个关键字)
47.设计一套系统,使之能够从不断增加的不同的数据源中,提取指定格式的数据。
要求:
1)、运行结果要能大致得知提取效果,并可据此持续改进提取方法;
2)、由于数据来源的差异性,请给出可弹性配置的程序框架;
3)、数据来源可能有 Mysql,sqlserver 等;
4)、该系统具备持续挖掘的能力,即,可重复提取更多信息
51.用mapreduce实现sql语句 select count(x)from a group by b?
58.Hadoop 参数调优。cluser level :JVM ,map/redcue slots,job level:reducer#,memeroy, use combiner?user compression?
65.使用mapreduce来实现下面的实例
实例:现在10个文件夹,每个文件夹都有1000000个url.现在让你找出top 10000url
67.如何确认hadoop 集群的健康状况?
答:
----------------------------------------------------------------------
111.生产环境中为什么建议使用外部表
112.hadoop mapreduce 创建类 DataWritable 的作用是什么?
113.为什么创建类DataWritable?
123.JAVA基础类:
a.继承:写的一段代码,让写出结果
b.引用对象和值对象
124.Linux 基础:
a.find 用法
b. 给出一个文本:比如http://aaa.com
写出shell统计,最后输出结果:
aaa 1
ccc 2
bbb 3
要求结果还要排序
还有别的,也是比较基础的
125.数据库类:oracle查询语句。
面试:讲项目经验:问的很细,给纸,笔,让画公司hadoop 的项目架构最后还让自己
说几条业务,然后经过平台后,出来成什么样子。
Java方面:io输入输出流里有哪些常用的类,还有webService,线程相关的知识
linux:问道jps命令,kill 命令,问awk,sed是干什么用的、还有hadoop 的一些常用命令
hadoop :讲hadoop1中map,shuffle,reduce的过程,其中问道map端和reduce
端溢写(spill)的细节。
项目部署:问了项目是怎么部署,代码怎么管理
137.用linux实现下列要求:
ip username
a.txt
210.121,123.12 zhangsan
34.23.56.78 lisi
11.56.56.72 wangge
b.txt
58.23.53.132 liuqi
34.23.56.78 liba
a.txt,b.txt中至少100万行
1. a.txt,b.txt中各自的ip个数,ip的总个数
2.a.txt中存在的ip 而b.txt 中不存在的ip
3.每个username 出现的总个数,每个username对应的ip 个数。
150.对于mahout,如何进行推荐、分类、聚类、的代码二次分发分别实现哪些接口。
151.请问下,直接将时间戳作为行健,在写入单个region时候会放生热点问题,问什么?
161.写出你对zookeeper的理解
十六、来自 aboutyun 的面试题(6 道)
187.列出至少五种设计模式?用代码或UML类图描述其中两种设计模式的原理?
200. 写一个冒泡程序
205.以你的实际经验,说下怎样预防全表扫描
206.多线程
34. HADOOPHa集群中,各个服务的启动和关闭顺序?
启动
start-dfs.sh
start-yarn.sh
315.NameNode中meta数据时存放在namenode 自身,还是datanode等其他节点?
DataNode节点自身是否有meta数据存在?
318.在HadoopHA集群中,简述Zookeeper 的主要作用,以及启动和查看状态的命令?
322.在hadoop 开发过程中使用过哪些算法?其应用场景是什么?
328.一台机器如何应对那么多的请求访问,高并发到底怎么实现,一个请求怎么产生的,
在服务端怎么处理的,最后怎么返回给用户的,整个的环节操作系统是怎么控制的?
329.hdfs 的client端,复制到第三个副本事宕机,hdfs怎么恢复保证下次写第三副本?
350.habase怎么预分区?
352.htable API 有没有线程安全问题,在程序中是单例还是多例?
367.你自己写过udf函数么?写了哪些?
这个我没有写过
388.MapReduce 2.0中,MRAppMaster 主要作用是什么。MRappMater 如何实现任务容错?
389.为什么会产生yarn,它解决了什么问题。有什么优势?
393,。怎么提升多个JOB同时执行带来的压力,如何优化,说说思路?
397.hadoop 体系结构(HDFS与mapreduce 的体系结构)、Hadoop 相比传统数据存储方式(比如mysql)的优势?
398.HDFS的namenode 与secondarynamenode 的工作原理(重点是日志拉取和合并过程)hadoop1.x 的HDFS的HA方案(namenode 挂掉的情况如何处理、datanode挂掉的情况如何处理)?
405.MapReduce进阶知识:Hadoop 的几种文件格式、常见输入输出格式化类、多输入多输出机制、Mapredcue 的常见算法(各种join 原理和优缺点、次排序和总排序)?
430.写出你对zookeeper的理解
提示: 大部分分布式应用需要一个主控、协调器或控制器来管理物理分布的子进程(如资源、任务分配等)。目前,大部分应用需要开发私有的协调程序,缺乏一个通用的机制协调陈谷的反复编写浪费,且难以形成通用、伸缩性好的协调器。
zookeeper:提供通用的分布式锁服务,用以协调分布式应用。
。
456.举例hadoop 中定义的最常用的inputformats。哪个是默认的?
提示:Dbinputformat、fileinputformat (keyvalueTextInputFormat、NlineInputFormat、TextInputFormat)
默认:TextInputFormat
457.TextInputFormat 和KeyValueInputFormat类之间的不同之处在于哪里?
提示:TextInputFormat中的key 表示行的偏移量,value是行文本内容
KeyValueInputFormat 的key value是通过第一个制表符进行划分的
458.hadoop中的inputsplit是什么?
提示:每一map任务单独处理的数据单位,可以决定单个mapper任务处理的大小。默认大小与block一样大
459.hadoop框架中文件拆分时如何被触发的?(block是怎么处触发)
提示:客户端上传文件时为从NameNode申请的ID和位置
460.hadoop 中RecordReader的目的是什么?
提示:将inputsplit的数据解析成键值对
463.什么jobtracker?jobtracker有哪些特别的函数
提示:jobtracker负责接收用户提交的作业,负责启动、跟踪任务执行。是一个RPC服务端
jobtracker有哪些特别的函数:Jobsubmit protocol
464.什么是tasktracker?
提示:mr的客户端,接收jobtracker的发出的指令,用来执行任务的
465.hadoop 中job和task之间是什么关系?
提示:执行一次mr程序就是一个job,job再执行时会划分 maptask,reducetask。
task 是job运行作业的一个重要组成部分。
466.假设hadoop 一个job产生100个task,并且其中的一个task失败了,hadoop会怎样处理?
提示:hadoop容错机制,当一个任务执行失败,jobTracker发送命令重新执行,如果重新执行四次也不行,任务执行失败
mapred-site.xml配置文件里
<name>mapred.max.attemp<name>
<value>4<value>
469.什么是hadoop streaming?
提示:指的是用其他语言处理
478.jvm 的4个引用
提示:强引用就是不会被GC回收 软引用在JVM报告内存不足时才会被回收 ,弱引用与软引用相似;虚引用是跟踪对象被GC回收的状态。
484.讲一下垃圾回收算法
486.聚类算法
487.SSH锁涉及到权限
490.两个文件,每一都有几百个亿条数据,都有订单字段,这两个表如何关联,效率最高?
492.java如何实现高并发?
493.HashMap、TreeMap区别,以及TreeMap原理
495.Spring 用过哪些组件?
496.如果有几百亿条数据,如何在表中存放?
502.javacore,多线程,jvm
506.Spark程序做了哪些配置
507.Spark哪些操作耗费内存
508.Spark架构
509.Drive作用
510.spark topN 怎么写
513.MR InputFormat
515.Impala为什么快
516.Impala的架构
517.自定义异常(java 部分)
518.线程状态和ThreadLocal怎么实现线程安全
519.JVM调优
520.SringMVC调用过程
521.Hibernate 二级缓存实现原理
522.Spring 事务传播机制
524.爬几家网站,都爬取哪些指标?
526.自定义分区
528.nohup
530.rowky 设计(爬虫项目)
533.reids 和memstore区别
535.shuffle?看过源码吗?
537.python的map用法?
538.写shell 脚本统计截取一个文本的指定字段?
541.数学建模用的什么算法?
544.解释一个类生成过程?
547.solr的索引在哪里?
550.你们搭建集群有没有遇到 丢失jar包
552.对solr的认识干什么用的怎么建立索引?
Hadoop 之面试题的更多相关文章
- Hadoop 面试题redis
Hadoop 面试题之十 548.redis有什么特别之处,为什么用redis,用hbase 不行么? 答:redis 是基于内存的数据库,速度快 551.redis用什么版本? 3.0以上才支持集群 ...
- Hadoop 面试题之Hbase
Hadoop 面试题之九 16.Hbase 的rowkey 怎么创建比较好?列族怎么创建比较好? 答: 19.Hbase 内部是什么机制? 答: 73.hbase 写数据的原理是什么? 答: 75.h ...
- Hadoop 面试题之storm 3个
Hadoop 面试题之八 355.metaq 消息队列 zookeeper 集群 storm集群(包括 zeromq,jzmq,和 storm 本身)就可以完成对商城推荐系统功能吗?还有其他的中间件? ...
- hadoop面试题答案
Hadoop 面试题,看看书找答案,看看你能答对多少(2) 1. 下面哪个程序负责 HDFS 数据存储.a)NameNode b)Jobtracker c)Datanode d)secondary ...
- 大数据hadoop面试题2018年最新版(美团)
还在用着以前的大数据Hadoop面试题去美团面试吗?互联网发展迅速的今天,如果不及时更新自己的技术库那如何才能在众多的竞争者中脱颖而出呢? 奉行着"吃喝玩乐全都有"和"美 ...
- C++版 - 剑指offer之面试题37:两个链表的第一个公共结点[LeetCode 160] 解题报告
剑指offer之面试题37 两个链表的第一个公共结点 提交网址: http://www.nowcoder.com/practice/6ab1d9a29e88450685099d45c9e31e46?t ...
- hadoop生态之面试题篇
一.hdfs的高可用 1.先说下自己的理解, 正常的hdfs有namenode,datanode,secondnamenode,但是second name node 不是真正意义上的namenode备 ...
- 【Todo】找出共同好友 & Spark & Hadoop面试题
找了这篇文章看了一下面试题<Spark 和hadoop的一些面试题(准备)> http://blog.csdn.net/qiezikuaichuan/article/details/515 ...
- Hadoop 面试题 之Hive
1.Hive 有哪些方式保存元数据,各有哪些特点. 15. Hive内部表和外部表的区别 23.hive底层与数据库交互原理Hive的Hql语句掌握情况? 36.使用Hive或自定义mr实现如下逻辑: ...
随机推荐
- As环境下添加android support library依赖库
2015年的google大会上,google发布了新的Android Support Design库的新组件之一,以此来全面支持Material Design 设计风格的UI效果,为了可以使用这些新颖 ...
- mongoDB在centos7上的安装
1,下载安装包 下载MongoDB的安装文件 地址:https://www.mongodb.org/downloads#production 选择Linux 64-bit legacy 版本,下载到目 ...
- POJ 2528 Mayor's posters(线段树/区间更新 离散化)
题目链接: 传送门 Mayor's posters Time Limit: 1000MS Memory Limit: 65536K Description The citizens of By ...
- HDU 1598 find the most comfortable road(最小生成树之Kruskal)
题目链接: 传送门 find the most comfortable road Time Limit: 1000MS Memory Limit: 32768 K Description XX ...
- python dict.get()和dict['key']的区别
先看代码: In [1]: a = {'name': 'wang'} In [2]: a.get('age') In [3]: a['age'] --------------------------- ...
- Markdown的使用简介
以前有摘抄过,然而onenote速度感人,现在又主要用Linux,所以在这里备份一下,好方便用 Linux下推荐remakeble软件,或者直接sublime text,再或者vim,反正我不会ema ...
- python bottle框架
python bottle框架 简介: Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Python的标准库外,其不依赖任何其他模块. Bottl ...
- SVN cleanup操作反复失败解决办法
今天在更新项目的时候遇到一个问题,按惯例要cleanup才能重新更新.但是很不幸,在cleanup的时候又遇到了问题! 1 svn cleanup failed–previous operati ...
- 远程连接实验室的VPN
Windows 7 (win8类似)的用户请按以下步骤进行操作:1.点击“开始”菜单,然后点击“控制面板”,然后点击“查看网络和任务”.2.点击“设置新连接或网络”.3.点击“连接到工作区”,然后点击 ...
- Maven环境变量配置
Maven 3.0.4版本下载地址: http://www.apache.org/dyn/closer.cgi?path=/maven/binaries/apache-maven-3.0.4-bin. ...