1、过滤器有什么用途:
增强hbase查询数据的功能
减少服务端返回给客户端的数据量
reduce之后数据的输出量有多大(结合具体场景,比如pi)
Sca阶段的增强日志(1.5T—2T)
过滤性质的mr程序,输出比输入少
解析性质的mr程序,输出比输入多(找共同朋友)
2、RDD缓存
rdd.cache
rdd.persist
3、什么是spark
基于内存计算发数据分析引擎,提高在大数据环境下数处理的实时性,spark仅涉及数据计算
4、假如Namenode中没有数据会怎么样?
没有数据的Namenode就不能称之为Namenode,通常情况下,Namenode肯定会有数据。
5、假如一个分区的数据逐步错误怎么通过hivesql删除
alter table ptable drop partition(daytime=‘20140921’,city=‘bj’);全部删除,文件夹还在
6、storm怎么保障消息不丢失
nimbus 告诉 Zookeeper 调度接收数据 ,spout接收数据 ack响应,其他节点进程 在spout消费拉去数据,每个tuple发送个bolt进行处理,如果成功处理则发送ack消息给zookeeper,发送消息 tuple消费失败则标记为fail,Zookeeper根据偏移量从新发送数据直到消费为止
Kafka
7、解释下hbase实时查询原理
实时查询,可疑人物是从内存中查询,一般响应为1秒内。
Hbase机制是数据先写入到内存中,当数据达到一定量,再写入磁盘中,在内存中不进行数据的更新和合并操作,值增加数据,使得用户的写操作值进入内存中可以立即返回,保证了Hasee的高性能
8、RDD 是什么
弹性分布式数据集,是spark中最基本的数据抽象,可以存于内存中或者磁盘中,分布式存储可用于分布式计算
一个不可变,可分区,里面的数据可并行计算的集合
9、描述Hbase的rowkey的设计原则
1、 rowkey长度原则:设计为定长,如果rowkey过长,内存使用率降低,会降低检索效率
2、 rowkey散列原则:将rowkey的高位作为散列字段,有程序随机生成,这样将提高数据均衡分布在每个RegionServer上,以实现负载均衡。
如果没有散列字段,所有数据就会集中在一个RegionServer上,数据检索时负载会集中在个别RegionServer上,造成热点问题,降低效率
3、 rowkey唯一原则:必须在设计上保证唯一性,rowkey是按照字段顺序排序存储的,设计rowkey时,充分利用排序这个特点,将经常读取的数据存在一块,可能被访问的数据放在一起
10、Sqoop工作原理是什么?
hadoop生态圈上的数据传输工具。
可以将关系型数据库的数据导入非结构化的hdfs、hive或者bbase中,也可以将hdfs中的数据导出到关系型数据库或者文本文件中。
使用的是mr程序来执行任务,使用jdbc和关系型数据库进行交互。
import原理:通过指定的分隔符进行数据切分,将分片传入各个map中,在map任务中在每行数据进行写入处理没有reduce。
export原理:根据要操作的表名生成一个java类,并读取其元数据信息和分隔符对非结构化的数据进行匹配,多个map作业同时执行写入关系型数据库