游艇会电子游艺APP

当前位置:首页 > 职业发展 > 正文

游艇会电子游艺APP面试经验总结2018-11-26 15:27:16 | 编辑:hely | 查看: | 评论:0

hive的计算是通过什么实现的?hive是搭建在Hadoop集群上的一个SQL引擎,它将SQL语句转化成了MapReduce程序在Hadoop上运行,所以hive的计算引擎是MapReduce,而hive的底层存储采用的是HDFS

hive的计算是通过什么实现的

游艇会电子游艺APPhive是搭建在Hadoop集群上的一个SQL引擎,它将SQL语句转化成了MapReduce程序在Hadoop上运行,所以hive的计算引擎是MapReduce,而hive的底层存储采用的是HDFS

yarn和hive的关系

因为hive的底层实现是MapReduce,所以确切的来说是yarn和MapReduce的关系,yarn可以作为MapReduce计算框架的资源调度系统

NameNode和DataNode的通信原理

客户端向DataNode发出RPC请求后,DataNode会向NameNode请求获取block快,NameNode根据DataNode的块报告和心跳, 会返回给DataNode指令. 通过这种方式NameNode间接地和DataNode进行通信,实际上NameNode作为Server端, 是不会主动去联系DataNode的, 只有作为客户端的DataNode才会去联系NameNode.

内部表与外部表的区别

hive创建表的时候通过external修饰的来创建外部表,没有external的则是内部表,当删除内部表时,存储在HDFS的数据将会被一起删除,而删除外部表时,数据则会保留

数据库事务的概念

游艇会电子游艺APP事务就是单个逻辑工作单元执行的一系列操作,要么都执行,要么都不执行,要满足事务,就得满足原子性、一致性、隔离性、持久性

谈谈HBASE底层的理解

(1)HBASE主要分为HMaster和HRegionServer,HMaster主要负责表和Region的管理,负责表的增删改查,管理HRagionServer的负载均衡和Region的分布,还负责HRegionServer失效后Region的转移

游艇会电子游艺APP(2)HRegionServer主要负责存储HRegion,每一个HRegion上有多个Hstore(对应表中的列簇),当写入数据时,Hstore中的memstore会将数据写入缓存,当缓存写满后(默认64M),会出发flush将缓存里的数据flush到磁盘形成storefile文件,storefile文件是Hfile的轻量级包装,Hfile是附带索引格式的文件

flume与kafka的区别

游艇会电子游艺APPflume适合做日志采集,可以定制多种数据源,减少开发量;而kafka是分布式消息处理的中间件,自带存储功能,适合做日志缓存;flume主要用于将数据往HDFS、HBASE发送;如果涉及多个系统的使用,可以选择用kafka

kafka如何保证数据不丢失、不重复消费

游艇会电子游艺APP(1)在同步模式下,将ACKS设为-1,也就是将消息写入leader和所有的副本

(2)在异步模式下,如果消息发送出去了还没有收到确认的时候,缓冲池满了,在配置文件中设置成不限时阻塞超时的时间,也就是说让生产一直阻塞下去,这样数据也不会丢

(3)将消息的offset存储起来(如存储到HBASE),每次消息处理时判断是否处理过

如何搭建一个高并发高可用的平台

(1)空间换时间

多级缓存:用户页面缓存、反向代理缓存、cache机制等

索引:哈希(适用于数据的快速存取)、B+树(适用于查找,避免多次IO)、倒排(适用于搜索领域)

(2)并行与分布式计算

游艇会电子游艺APP切分任务、分而治之(基于数据的分解)

多进程、多线程并行执行(基于问题的分解)

(3)多维度的可用

负载均衡、容错、备份

读写分离

依赖关系(能异步处理则异步)

监控模块的运行

(4)伸缩

拆分(业务逻辑的分段、对数据的分表分库)

(5)优化资源利用

资源的释放

作者:菜鸟苏先森

来源:CSDN

上一篇:博士应届毕业的算法工程师们,年薪最高可达90万! LinkedIn最新求职市场报告:机器学习工程师需求1年增长12倍下一篇:

公众平台

游艇会电子游艺APP搜索"raincent"或扫描下面的二维码