HAWQ:大数据技术发展新趋势

品牌
软件和集成电路
2021年04月04日 20:17

2017大数据技术发展趋势分析

常雷

偶数科技在2016年底成立,主要是由EMC/Pivotal核心团队成员组成,现在做两个事情,偶数两大产品:Apache HAWQ和Oushu HAWQ++。今天我主要介绍大数据领域的发展趋势中关于计算引擎的部分。

在数据平台的演进路线中,第一代数据仓库相对传统,以小型机或一体机的专有的硬件平台为主,面向传统的BI分析,系统缺乏弹性,资源固定,不易调整,很难支持突发的应用需求或密集复杂的计算需求。第二代数据平台是大家熟悉的MPP,可以支持密集、复杂的计算需求,但需要一定时间。到了第三代,其实是最近五六年发展起来的新型数据仓库,可根据工作负载弹性伸缩,灵活配置,按需分配资源,还可以快速支持突发的应用计算需求,如:沙盘演练等。

2004年左右,Hadoop出现之后,有2个系统十分知名:分布式文件系统HDFS和面向大数据并行处理的计算模型MapReduce。MapReduce由于其自身的复杂性,现在使用得越来越少。Hadoop社区也及时发现了这个问题,这种情况促进了Hive的出现,可将SQL语句转换为MapReduce任务进行运行,Hive定义了简单的类SQL查询语言,称为HQL。2011年,我任职EMC时参与了刚刚启动的HAWQ项目。我们看到SQL-on-Hadoop引擎运行特别慢,但传统的MPP却非常快,因此我们将这两种技术结合起来形成了HAWQ。在SQL-on-Hadoop引擎的对比中,我们从两个维度比较,第一个维度是兼容性和性能,第二个维度是可扩展性和开放性。新的SQL-on-Hadoop引擎,以HAWQ为代表优势明显。

作为新型的SQL-on-Hadoop引擎,Apache HAWQ满足了哪些方面的用户需求?在应用层,比如做政务大数据、公安大数据、电力大数据等都是从应用出发,对底层技术相对缺乏了解。在做应用的时候,与数据挖掘、报表处理等相关的方面都是通过引擎来完成的,引擎做了大部分的事情。比如HAWQ可以根据提供的数据告诉你发生了什么,数量、频率、地点信息都可以知道,甚至可以告诉你为什么会发生这些事情,都可以在数据库里实现。HAWQ的定位就是世界上最快的全球规模并行SQL引擎。

2011年,HAWQ启动;2013年,HAWQ 1.0发布,性能是Hive的数百倍;2014年,HAWQ为全球多家大型企业客户采用,包括GE;2015年,HAWQ开源成为Apache项目;2016年,致力于HAWQ发展的偶数科技宣告成立;2017年,偶数HAWQ++企业版本发布。

在HAWQ架构的演进过程中,很多人会问,HAWQ和Greenplum database(GPDB)有什么区别?GPDB其实一个拥有广泛用户群的MPP database,在中国的运营商几乎全部都在用GPDB。从GPDB(2003)的精简架构看,在每一个节点上有多个分段(Segment),每一个原体节(Primary Segment)上都有一个Mirror Segment(镜像),相当于数据在另外一个节点上有一个备份,这是一个非常经典的MPP架构,而大部分的MPP也基本都是这种架构,其并行度也是十分固定的。

在2011年,我们做了HAWQ Alpha版本,其实就是Greenplum database on HDFS。我们在起步的时候,将Greenplum database的存储层换成了HDFS。这是第一个HAWQ Alpha版本。2013年,在HAWQ1.0版本的架构上我们做了大量的变动,去掉了Mirror Segment(镜像),这是一个非常大的进步,这意味着我们的复制不再通过上层的数据库而是通过底层的文件系统来做,这对于节点的管理、备份、还原都有很大改进。这里边解决的最大的问题是恢复,一个节点“死”了以后,可以直接放弃,其他节点依然在工作。

HAWQ1.0版本出现以后,客户大量涌现,对底层架构提出了非常多的要求。2016年,HAWQ2.0出现,我们希望它能够更多地适应云环境的要求,因此我们对原来版本的架构做了更多的改动,即计算和存储的完全分离,解决了并行度的问题,可以根据查询量大小来动态决定执行查询使用的节点及并行度,优于传统MPP的固定并行度执行。从HAWQ2.0的架构来看,无论是扩容也好,升级也好,都变得十分简单,HAWQ2.0已经实现了秒级扩容,节点自动进入集群,使得整个集群的计算能力和存储能力大大提升。2017年,我们做HAWQ++3.0的同时对之前的版本做了大量优化,性能提升了10到50倍。

我们的研发部门中一部分团队正在做HAWQ++4.0的工作,其实就是全球规模的引擎,可以解决很多实在的问题,比如在金融、公安行业经常会有“两地三中心”的需求,数据可以很容易地复制到多个中心里去。这样对于管理和运维,以及混合负载的支持会非常高效。

在HAWQ的全球用户体系里,有很多大企业,比如GE、海尔、京东、中国移动等。以某大型制造企业为例,他们将战斗机引擎中的很多数据收集起来放在HAWQ里边,搭建大数据平台,提高处理能力,大概有200多个节点的平台集群以及PB级的数据存储,实现实时故障预测等应用。某大型证券交易所,把所有交易数据放入Hadoop和HAWQ,把12亿条记录放到HAWQ里面进行查询分析,获得更好的性能。(根据演讲内容整理,未經本人审核)endprint

家电之家©部分网站内容来自网络,如有侵权请联系我们,立即删除!
海尔 文章 数据
你该读读这些:一周精选导览
更多内容...

TOP

More