大数据时代快速SQL引擎-Impala( 十 )
通常情况下 , 我们会考虑两种方式的集群部署:混合部署和独立部署 , 下图分别展示了混合部署与独立部署时的各节点结构 。 混合部署意味着将Impala集群部署在Hadoop集群之上 , 共享整个Hadoop集群的资源;独立部署则是单独使用部分机器只部署HDFS和Impala , 前者的优势是Impala可以和Hadoop集群共享数据 , 不需要进行数据的拷贝 , 但是存在Impala和Hadoop集群抢占资源的情况 , 进而可能影响Impala的查询性能(MR任务也可能被Impala影响) , 而后者可以提供稳定的高性能 , 但是需要持续的从Hadoop集群拷贝数据到Impala集群上 , 增加了ETL的复杂度 。 两种方式各有优劣 , 但是针对前一种部署方案 , 需要考虑如何分配资源的问题 , 首先在混合部署的情况下不可能再让Impalad进程常驻(这样相当于把每一个NodeManager的资源分出去了一部分 , 并且不能充分利用集群资源) , 但是YARN的资源分配机制延迟太大 , 对于Impala的查询速度有很大的影响 , 于是Impala很早就设计了一种在YARN上完成Impala资源调度的方案——Llama(Low Latency Application MAster) , 它其实是一个AM的角色 , 对于Impala而言 。 它的要求是在查询执行之前必须确保需要的资源可用 , 否则可能出现一个Impalad的阻塞而影响整个查询的响应速度(木桶原理) , Llama会在Impala查询之前申请足够的资源 , 并且在查询完成之后尽可能的缓存资源 , 只有当YARN需要将该部分资源用于其它工作时 , Llama才会将资源释放 。 虽然Llama尽可能的保持资源 , 但是当混合部署的情况下 , 还是可能存在Impala查询获取不到资源的情况 , 所以为了保证高性能 , 还是建议独立部署 。
推荐阅读
- 捉迷藏|?LOL世界赛“含金量”数据出炉:EDG仅排第六,IG稳居榜首
- 李儒|三国杀:为什么叫李儒时代的骄傲,他到底有什么好骄傲的?厉害吗
- 梦幻西游|梦幻西游:诗情画意进入净台时代,郭无情买爆总17段野兽鞋
- s6|金铲铲之战:S6双城传说如何才能快速上手?基础知识很关键
- 帝国时代4|老外做的《帝国时代4》,究竟能有中国味吗?
- 碧蓝航线|碧蓝航线SR重巡福煦数据详解 期待越高失望越大 强度平平无奇
- 赛博朋克2077|王者荣耀:6种不花钱就能领皮肤碎片的方法!快速兑换心仪皮肤!
- 地下城与勇士|DNF:“全民云上”时代到来,一个过气小副本,究竟有何魅力?
- steam|目前Steam上什么游戏比较火?《帝国时代4》屈居第二
- kramer|国服极地大乱斗数据上线,来看看胜率榜符合你的预期吗?