《2019年阿里巴巴新一代交互式分析引擎.pdf》由会员分享,可在线阅读,更多相关《2019年阿里巴巴新一代交互式分析引擎.pdf(29页珍藏版)》请在三个皮匠报告上搜索。
1、新一代交互式分析引擎hologres阿里云智能-计算平台事业部-交互式分析目录一.背景介绍二.基础架构三.技术亮点四.典型场景介绍五.未来规划背景介绍背景:典型场景分析(业务需求,数据/计算量与资源消耗的分布)Lambda架构的问题:1.使用多种引擎和系统去组合,开发和维护成本高,学习生成高2.数据在不同的View中存储多份,空间浪费,数据一致性的问题如何解决3.从使用上来说,Batch,Streaming及Query均使用不同的language,使用起来并不容易背景:典型开源架构 技术源于流计算+数据库技术,落地于搜索与广告业务 开源的解决方案无法满足阿里巴巴复杂的业务场景 实时数据中台建设
2、的需求:一个入口,一份数据,一种查询语言 成本,易用性,实时数据中台架构的统一性 Alibaba Blink(Flink内部版,已开源)创始人量仔老师牵头打造新一代交互式分析引擎背景:技术和业务背景Hologres架构介绍 新一代海量数据交互式分析引擎 一套引擎支持Point Query(hbase场景),Ad-hoc Query(Druid场景),OLAP Query(Impala场景)快 存储计算分离 支持实时数据与批量数据导入 支持External Storage,与阿里云大数据产品无缝对接Hologres介绍Hologres架构Pangu/FuxiHolo QEHolo SEHolo
3、FEJDBC ServerUser AuthSQL ParserDataWorksBI toolsJDBC DriverOptimizerCoordinatorQuery RewriteQE RuntimeOperatorsIndexBuffer/CacheFileFormat/IndexHolo SMCatalogServiceClusterManagerMetrics SystemWatchDogTraceSystemHologres 存储计算分离的架构 内置存储引擎(行存,列存)行存:整行数据连续存放,更新高效,对point query和批量scan更友好(Hbase场景)列存:相关列的
4、数据连续存放,按列做聚合更高效,压缩更高效,适合分析型场景 External TableStorage Engine(SE)自研QE(性能卓越)异步执行引擎 向量化计算 支持Filter/Agg计算的pushdown PostgreSQL QE(兼容生态)兼容PostgreSQL生态 与生态合作开发Query Engine(QE)PostgreSQL协议及SQL语法的兼容 更加智能的优化器,提供Query Federation的能力 调度,流控,反压Frontend(FE)Hologres技术亮点 Why?大数据业务Hbase中数据存一份,Druid里存一份,XXX里存一份 浪费!数据一致性怎
5、么保证?学习成本高,成天学习新系统的使用 功能 内置支持两种存储格式,创建表的时候选其一或者都选,数据一致有保证 QE提供两个版本,自研和开源 能够替换现有业务的Hbase,Druid和impala,且性能更好 阿里巴巴业务已得到验证 团队十多名Flink commiter,两名Hbase PMC,多名Hbase/Druid/Kylin等开源系统commiterhologres技术亮点-统一引擎架构 Why?用户只关心自己有多少计算资源,根本不关心自已的机器是什么 已经申请的计算资源可否利用,如ODPS/Blink 新的NVME SSD盘可以达到150000IOPS,磁盘IO不再是性能瓶颈,问
6、题转变为如何把CPU高效利用起来 存储计算分离是未来大势所趋,存储和计算非对齐采购,成本更低,部署运维更方便 功能 存储使用Pangu 2.0,由存储团队维护,QE和SE可运行在K8S及飞天集群中 全异步的存储和计算引擎,吃尽所有CPU计算能力 灵活扩容,缺存储扩存储,缺计算扩计算hologres技术亮点-存储计算分离 Why?用户写好Query如何去调优?一套引擎中支持多套QE,查询计划如何去生成?多种文件格式,不同版本的operator多种实现方案,如何去选择?如何更高效的去生成上述查询计划?功能 支持多引擎的查询优化器,能够很容易与各种QE结合 基