1、基于历史查询的IMPALA集群性能优化实践温正湖 网易数帆-数仓技术负责人|01高性能数仓建设高性能数仓建设介绍网易大数据及高性能数仓建设方案03HBO优化实践优化实践介绍HBO在网易云音乐等业务场景使用实践02HBO实现方案实现方案介绍管理服务器实现和基于历史查询的集群优化04未来发展计划未来发展计划介绍未来一段时间Impala和产品化的开发计划目录目录 CONTENT|关于网易数帆 网易数帆源自网易杭州研究院,是网易数字经济的创新载体和技术孵化器,致力于成为领先的数字化转型技术与服务提供商,为企业数字化转型提供技术动力。依托网易集团二十余年互联网技术积累,网易数帆聚合云计算、大数据、人工智
2、能等新型数字化技术,聚焦提供开放、稳定、安全、高效的数据智能、软件研发、基础设施与中间件等基础软件,致力于帮助企业客户成功实现数字化转型。云原生软件生产力平台云原生软件生产力平台全链路大数据生产力平台全链路大数据生产力平台多媒体智能开放平台多媒体智能开放平台全维度质量效能平台全维度质量效能平台网易数帆:网易旗下数字化转型技术与服务提供商网易数帆:网易旗下数字化转型技术与服务提供商网易有数网易有数华夏银行音乐电商教育传媒办公邮箱物流农业零售金融教育能源工具产品平台公共数据建设数据建设方法论制造医药记忆科技网易有数-Impala的定位交互式查询:Impala批处理引擎:Spark+Kyuubi流计
3、算引擎:Flink/Sloth网易有数-Impala主要应用场景高性能数仓建设高性能数仓建设01|业务使用痛点分析|BI报表、Ad-Hoc、自助分析、取数和数据抽取共存时的SLA保障BI报表类业务追求实时性要求高,用户耐受程度不超过5秒查询的资源消耗预估不准确,执行计划不合理,如大表广播等元数据过旧导致查询出错,元数据未缓存导致查询性能下降HDFS NN波动导致文件句柄打开性能,DN波动导致数据扫描耗时变长随着业务的发展和新场景的引入,集群的SLA和性能变差,需反复治理高性能数仓-建设原则|收集和持久化impala历史查询信息,制作标准化图表进行可视化展示 多维度分析查询规律并进行基于历史查询
4、的优化HBO(History-based Optimization)更高的性能,更强的功能:版本升级、执行引擎增强、物化视图、虚拟数仓、数据缓存等 更好的产品化体验:元数据同步、集群管理自动化、集群信息可视化和可获得性等高性能数仓-建设原则|为有数BI报告的“数据医生”功能提供性能诊断数据 有数BI等组件通过SQL注解,反哺Impala进行更智能的查询分析 将物化视图能力集成到有数产品上 订阅和消费大数据血缘的数据产出消息,驱动统计信息计算、物化视图更新等 订阅和消费Hive Metastore(HMS)的DDL日志,驱动元数据同步、物化视图更新等 依托网易大数据NDH(Netease Dat
5、a Hub)进行存储优化,Z-Order、Page Index等高性能数仓-业务痛点解决方案|引入虚拟数仓虚拟数仓(virtual warehouse)对业务进行物理资源隔离 提供基于zookeeper namespace和基于query option的虚拟数仓路由 通过impalad多group name和coordinator多zk namespace来提高资源利用效率增强本地缓存本地缓存能力 优化DataCache性能和使用范围:LIRS算法、异步CacheFill、重启可用等 调优和扩大FileHandleCache来提高文件句柄缓存命中率提供统计信息自动计算统计信息自动计算能力 通过
6、分析历史查询summary日志输出待计算的表到配置可动态更新的白名单 通过数据产出消息、定时和DDL日志驱动统计信息计算高性能数仓-业务痛点解决方案|提升计算能力,使用预计算技术 升级Impala版本,提高性能基线 通过MT-DOP,服务器多节点部署提高计算资源利用效率 通过支持多表物化视图多表物化视图和透明改写技术提升查询性能支持缓存自动更新和异步加载 通过订阅HMS的DDL变更日志,高效驱动元数据缓存自动同步元数据缓存自动同步 通过配置动态白名单,对失效的缓存进行异步加载异步加载建立Impala集群标准化报表 统计集群每天的负载指标负载指标,包括查询量、耗时、资源消耗等 使用可视化报表(有