降低大数据分析门槛,HashData打造云端数据仓库
从单机数据库到分布式数据仓库,数据的存储和分析的方式在不断演进,2016年成立的酷克数据则是将数据仓库搬上云端,推出了SQL-on-Cloud。HashData,致力于降低企业大数据分析门槛
❆
1、 云端数据仓库
HashData联合创始人简丽荣,先后在IBM、雅虎以及Pivotal从事分布式计算研发工作,在Pivotal工作期间,从事MPP数据库Greenplum的开发工作。之后随着Hadoop逐渐火热,简丽荣等人将Greenplum的执行引擎与HDFS结合,开发出了Apache HAWQ,在当时的SQL on Hadoop市场中,无论是功能还是性能都表现突出。
然而,不论是Greenplum还是ApacheHAWQ以及后续出现的Impala等分布式执行引擎,虽然处理能力、分析功能和性能在不断提升,但是企业使用门槛一直较高,这里的门槛包括硬件设施的巨大投入、漫长的实施周期以及高昂运维成本等。
云端数据仓库HashData的出现,就是为了帮助企业解决这些问题:
❆
2、 HashData云端数据仓库
HashData是一款基于Greenplum的MPP架构云端数据仓库。与市场上很多只提供简单自动化部署和运维的云端数据仓库产品不同,Hashdata从数据内核层面实现了计算、存储的彻底分离,同时将数据仓库主节点中的元数据管理与资源调度管理分离,实现元数据管理、计算、存储三者的相互独立,通过创新性的多集群共享统一数据存储层的架构取得传统解决方案无法比拟的高可用、高并发和扩展性。
在这三个层面,每一层都能按照需求单独动态伸缩,极大提升了系统的扩展性和吞吐量,结合云平台海量的存储和计算资源,HashData可以满足超大数据量的分析和存储需求。
目前,HashData云数据仓库可以在青云、金山云、AWS、阿里云和腾讯云等云平台上运行,用户只需要按照数据量、查询复杂度选择云服务器类型和节点数量即可完成快速部署。
在存储层,HashData利用云平台的对象存储服务,如青云的QingStor,作为数据持久层,这种存储方式相对于块存储来说极大的降低了成本。同时,为了解决云数据存储在延迟方面的劣势,HashData会在计算节点本地部署缓存组件,将热数据在本地缓存,以减轻访问延迟。
在计算层,由于计算存储相互分离,计算节点数量增减并不会影响数据的存储层,不用担心数据丢失以及重分布问题,因此用户可以随时进行计算节点的扩容和缩容。
数据源方面,HashData除了兼容市场上常用的大部分ETL工具外,也提供丰富的数据迁移功能,帮助客户从各种业务系统、其它的数据仓库系统等以全量和实时增量的方式加载数据到HashData数据仓库,极大减少用户的数据迁移成本;数据分析方面,HashData提供简单的BI功能,并兼容市场上常用的大部分BI工具,同时支持原生Apache MADlib机器学习库,可以帮助用户完成库内机器学习建模分析。
简丽荣认为,云数据仓库开发难的部分不是数据库内核具体功能的开发,而是如何利用Service-Oriented-Architecture(SOA)的思想重构整个数据库系统,即把数据库内的每个组件以服务的方式去构建,以保证云数据库的灵活性以及可扩展性。
❆
3、HashData商业空间巨大
在市场策略方面,由于云数据仓库高性价比、近乎无限的扩展能力以及少的运维成本的特点,HashData可以服务的客户数量会更多,但对于客户的留存、续约率都有较高的要求,这样才能保证后续的营收增长。在拓展大客户时,会参照国外云数据仓库厂商Snowflake的模式,将这类客户的元数据单独存放以保证大客户对于安全的要求。
目前,HashData已经拥有十多个付费用户,包括像威立雅这样的世界500强客户,瑞易信息、销售易、蓝信康等海内外互联网SaaS公司,以及像江苏交通控股和三大运营商这样的本土大型机构,分布在运营商、物联网和金融等行业。获客方面,HashData主打合作伙伴方式,通过云厂商和集成商等合作伙伴来获取客户。
云数据仓库服务在国内处于早期,但是随着云计算的不断成熟,高性价比、运营简单的云数据仓库服务预计在企业中的接受程度会不断提升。
在市场格局方面,由于云厂商天生具有资源优势,所以如今已经有部分厂商开始提供云数据仓库服务。但是由于云厂商数据仓库一般只能在自家云服务上部署,而大中型企业在考虑高可用以及议价能力时,往往会选择多云部署的模式。因此,酷克数据这类具备中立性的、产品支持多云部署的云数据仓库厂商往往有较大优势。
❆
4、联合创始人简丽荣采访分享
近期,爱分析对酷克数据联合创始人简丽荣,就酷克数据的产品、经营策略,以及数据库行业发展趋势做了深入交流,现将部分内容分享如下。
爱分析:在创办酷克数据之前,有哪些工作经历?
简丽荣:从香港科大毕业后进入IBM中国研究院从事云计算,主要是Platform-as-a-Service(PaaS)方向的研究;之后去雅虎参与用户数据平台的建设,利用Hadoop生态圈的各种组件构建端到端的用户兴趣(就是我们常说的用户画像)服务平台,从用户行为日志采集、多数据源的清洗整理汇总,到后基于机器学习的用户兴趣分类。
2012年,我开始在Pivotal工作,初主要是从事MPP架构数据库Greenplum的研发工作。后来随着Hadoop逐渐发展火热,开始参与研发Apache HAWQ,一直到2015年9月份将HAWQ这个项目开源并贡献给Apache基金会。
爱分析:Apache HAWQ相对于Hive等其它SQL-on-Hadoop产品有何优势?
简丽荣:Apache HAWQ的设计初衷是,将Greenplum的执行引擎与Hadoop的存储引擎结合起来,HDFS分布式文件系统作为数据存储层,数据处理使用MPP执行引擎,从而构建一个既具备传统MPP数据仓库丰富分析功能和超高查询性能,同时也有类似Hadoop平台的高可用、灵活性以及扩展性的分布式数据库。
当时市场上SQL on Hadoop的解决方案并不多,只有耶鲁大学团队做的Hadapt和Facebook做的Hive,而这两个产品在当时无论是易用性还是查询性能方面都差强人意。我记得,当时HAWQ给沃尔玛做PoC时,平均查询速度比Hive快两个数量级以上,也是当时市场上能够在不对SQL语句进行大改动的情况下完整跑完TPC-DS 99条查询的SQL-on-Hadoop解决方案。
后来的故事大家都知道了,Cloudera的Impala,MapR的Drill,UC Berkeley/Databricks 的SparkSQL,Facebook也推出了新的SQL-on-Hadoop解决方案Presto,Hive也在Hortonworks的支持下快速迭代。这些产品无论是功能还是性能都有了很大提升,并开始提供原来只有商业数据仓库产品才用的功能特性,如ACID事务、更新和删除操作,索引等,而HAWQ的内核还停留在十多年前的PostgreSQL 8.2的基础,初从Greenplum继承下来的优势正快速流失。
爱分析:为什么选择做云数据仓库?
简丽荣:我觉得可以从如下两个方面来回答这个问题:
1.商业:虽然在2015年底、2016年初的时候,国内云计算市场的前景不像今天这样清晰,但我们认为大趋势已经呈现。企业高管不再争论应不应该上云,而是什么时候上云以及多大范围内使用云。企业将越来越多的应用部署在云上面,而这些应用产生大量的业务数据。考虑到数据迁移成本、网络延迟以及数据一致性等因素,将云上产生的数据移到云外面进行分析是不可取的。其实,这个逻辑跟当年我们决定做Apache HAWQ是一致的:数据保存在什么平台上面,我们就围绕这个平台打造原生的数据处理引擎。只不过这一次,我们押注云平台而已。
2.技术:云计算的很多特性,包括规模经济和按需付费的商业模式,硬件资源API化,以及几乎无限的可扩展性以及弹性等,提供了很多技术创新机会,让我们有机会解决传统数据仓库和Hadoop大数据平台面临的易用性、可扩展性、弹性、高可用和高并发等难题。
爱分析:计算、存储分离更适合云架构?
简丽荣:当初我们决定围绕着云计算打造下一代分布式分析型数据库的时候,我们确定了如下三个基本特性:
1.抽象服务:作为一个服务,除了易用性的需求外,客户对自动化/智能化运维和高可用有着比传统私有部署更高的要求。通过计算、存储分离的方式,我们利用云平台提供的对象存储服务作为数据持久层,并将由多个计算节点组成的计算层变得完全没有状态,从而大幅降低计算层的复杂性和发生故障的概率,以及节点发生故障后对整个集群的负面影响和故障恢复所需的时间。
2.多维度弹性:一直以来,云计算的一个很大卖点就是按需购买,按使用量付费。通过计算和存储分离,我们可以根据客户具体的应用场景,对计算和存储分别单独扩缩容,而不用像传统的计算存储紧耦合的方案,计算和存储必须一起扩缩容,容易造成计算资源或者存储资源的浪费。而且,在没有计算任务的时候,我们可以将计算资源完全释放,不会对数据的持久性和可访问性造成任何影响。
3.扩展性:我们知道,对于某个应用场景而已,对象存储服务提供的存储能力几乎是无限的,而将计算层无状态化后,单计算节点的故障不会影响集群的可用性,我们可以将计算集群的扩展性推向全新高度,能够同时调度几百甚至上千个计算单元。
所以,我们认为,计算、存储分离是云架构的基石。
爱分析:HashData云数据仓库是基于HAWQ吗?
简丽荣:不是的,HashData是基于开源版本的Greenplum来做的。因为公司创始团队跟Apache HAWQ这个项目的关系比较密切,所以业界大多认为HashData是基于HAWQ来实现的,这里额外澄清一下。
之所以选择Greenplum,主要 有如下两方面的原因:
1.目前业界的开源企业级MPP数据仓库:全球大客户1000+安装集群,百万行源代码,超过10年的全球研发投入,标准SQL数据库,支持ACID和分布式事务等。
2.开源社区非常活跃:除了Pivotal公司外,很多创业公司(包括我们自己)、集成商、云计算大厂都在围绕Greenplum打造产品和解决方案,并且不断地将PostgreSQL新功能往回合并,提升内核版本。
爱分析:HashData相对于Hadoop的优势有哪些?
简丽荣:Hadoop的生态系统有两大基础组件:HDFS和YARN。HDFS是分布式共享文件系统,YARN负责集群资源管理。我们认为,在云计算的大背景下,我们有着更好的选择。例如,S3vs. HDFS,Kubernets vs. YARN。Databricks有一篇博客文章详细比较了S3和HDFS,结论是,无论是性价比、高可用、数据持久性还是弹性,S3都有着比HDFS高出一个数量级的优势。我们相信,如果仔细比较Kubernets(或者其它公有云厂商提供的资源编排服务)和YARN,结论也差不多。还有一点比较重要的是,无论是S3还是云计算资源编排服务,本身就是按需使用的服务,不像HDFS或者YARN需要用户自己运维。
HashData继承Greenplum丰富的分析功能、超高的执行性能以及企业级特性的同时,围绕着对象存储和抽象服务而构建,通过创新性的元数据管理、计算和存储三者分离,多集群共享统一数据存储层的架构,提供Hadoop/Spark大数据平台无法比拟的高性价比、易用性、可扩展性和高并发。
爱分析:云端数据仓库使用对象存储有什么缺点?
简丽荣:虽然前面提到,相对于传统的块存储和HDFS,对象存储在性价比、可扩展性、高可用、持久性以及高并发访问方面有着显著优势,但这些优势是有代价的:
远程访问带来的高延迟和低带宽:虽然云厂商不断改进对象存储的性能,但相对于利用了数据局部性的块存储和HDFS,对象存储的延迟会比较高,访问带宽也会相对低。为了减轻延迟和带宽问题给查询性能造成的影响,我们在计算节点部署缓存组件,将从对象存储下载的数据缓存在本地,这样下次再去访问这些数据的时候就可以直接从本地文件系统读取。我们的测试表明,在绝大部分应用场景,HashData的查询性能跟利用本地块存储的Greenplum是非常接近的。
Immutable文件系统,一旦写入不可更改:对象存储是不可更改的文件系统,甚至连追加操作都不支持。而作为一个全功能的分布式分析型数据库,HashData高效地支持增删改查所有操作。我们在数据内核层面做了大量的改进和取舍。
爱分析:HashData与其他云端数据仓库的区别有哪些?
简丽荣:近年来,很多云厂商都基于开源的MPP数据库(主要是Greenplum)推出了自己的云端数据仓库服务,这些服务主要有两个特点:
(1)分布式系统,支持线性扩容;
(2)按需付费,自动化部署、监控和运维。这给大众造成了一种印象,认为所谓的云端数据仓库就是将原来部署在x86物理服务器上的MPP分布式数据库一键部署到云端的虚拟主机。
除了上述两个共同点外,HashData与其他云端数据仓库的区别主要体现如下几方面:
(1)计算和存储分离,对象存储作为底层数据持久层,计算和存储可以独立扩容,提供多维度弹性。
(2)多集群共享统一数据存储层,通过多集群的方式支持高并发的复杂混合查询。
(3)共享存储+一致性Hash数据分布策略,实现秒级弹性伸缩以及高可用。
这里举一个Greenplum的例子。作为完全无共享架构的代表,Greenplum计算和存储是紧耦合的。这种设计带来超高性能的同时,面临着扩容窗口长的问题,因为每次扩容都导致全量数据的重分布,扩容时间跟集群数据量成正比。这个几乎所有传统MPP数据库都面临的老难题不会因为云厂商提供了一键部署的功能就能得到解决。在系统架构不进行全新设计的情况下,即便把Greenplum部署到云平台上面,还是无法充分利用云计算的弹性特性。而HashData在数据库内核层面,利用对象存储作为共享存储,加上基于一致性Hash的数据分布策略,使得集群扩容的时候不涉及任何数据的重分布,从而实现秒级扩容,充分体现云端数据仓库的弹性。
主推公有云部署,依赖合作伙伴获客
爱分析:现在主推的是私有云还是公有云的部署方式?
简丽荣:从功能特性方面看,公有云的部署方式是能体现HashData的设计理念和产品优势的:近乎无限的计算和存储扩展能力,快速启停和弹性伸缩带来的按需付费,以及纯SaaS代表的易用性。
通过使用HashData云服务,企业用户可以在几分钟内创建启动一个包含几个到几十个甚至上百个计算节点的数据仓库集群,数据加载完马上可以开始数据分析任务。随着业务负载的变化,用户可以动态地对数据仓库集群进行纵向伸缩(scale up and down)和横向伸缩(scale in and out)。
同时,由于是完全托管的云服务,HashData数据仓库承担了所有的集群资源管理、数据备份、持续监控、网络迁移、故障恢复、高可用和版本升级等纷繁复杂、极易出错的运维工作,让用户专注于业务分析上面。
近年来,随着软件定义存储(如对象存储)、开源IaaS平台(如OpenStack)和PaaS平台(如CloudFoundary),以及Kubernetes等产品逐步成熟并被企业所接受,传统的数据中心也开始向云架构演进。通过跟私有云厂商、对象存储厂商和集成商合作,我们也开始进入私有云市场,为大型金融机构、运营商和科研机构搭建基于私有云技术的数据仓库服务,替换已有的数据仓库一体机和传统的完全无共享MPP数据仓库。
爱分析:获客层面,主要是通过什么方式?
简丽荣:对于中大型的企业客户,我们主要是通过渠道(合作伙伴)来获客以及交付,因为这类客户需要的往往不仅是一个独立的数据仓库产品,而是一整套的解决方案,方案的交付实施以及后续的驻场服务。对于现阶段的我们,总包这些项目就显得“太重”了。通过跟合作伙伴的合作,我们可以把主要精力放在完善数据仓库产品本身。不过,对于中小型的客户,特别是互联网公司,我们一般会选择直销,因为这类客户的业务场景相对简单,自身的技术能力也很强,不需要我们实施服务,只需提供满足需求的产品即可。
爱分析: HashData客户有哪些?
简丽荣:目前我们主要关注如下几类客户:
1.运营商:包括B域、O域和M域,从基于网络数据包统计分析提供DDoS服务,到根据上网日志进行用户行为分析从而进行精准营销。
2.大型金融机构:由于移动支付、互联网金融的快速普及,大型金融机构正面临着数据和分析需求的爆炸式增长。传统的数据仓库一体机和完全无共享MPP数据仓库解决方案,要么成本高昂,要么可扩展性和查询并发度差,无法满足客户需求。
3.物联网(IoT)企业:传感器采集的数据特点是单位价值不高,但是数据量很大,而且地域分布范围广,天生适合接入到公有云平台。通过分析IoT数据,提供故障回溯、预测性维护等服务。
4.地理信息和遥感卫星数据服务商:类似IoT数据,地理信息和遥感卫星数据的数量也很大,而且相关的分析查询对计算能力要求非常高(如时空变换)。
5.互联网企业:为他们提供高性价比、使用快捷方便的数据仓库服务。
总的来说,我们关注的客户共同特点是:数据量大,查询复杂和访问并发度高。这些正是HashData擅长的应用场景。
爱分析:在获取大客户方面,酷克数据会有哪些方式?
简丽荣:商务层面,如前面所说,我们主要是通过渠道(合作伙伴)方式来获取大客户。技术产品层面,由于大客户对数据安全要求比较高,我们会学习Snowflake的策略,为大客户单独部署元数据服务,与其他客户的元数据物理隔离开,并对保存在对象存储上面的数据进行满足国际标准的加密处理,大限度地保证客户的数据安全。
爱分析:HashData云数据仓库的收费方式是怎样的?
简丽荣:与其它IaaS和PaaS云服务收费方式相同,都是按照使用量进行收费。目前,使用HashData的费用包含两部分,基础设施资源费用+HashData数据仓库服务费用。基础设施资源费用(包括存储、计算和网络等)是付给云厂商的,而HashData服务费用是基于集群计算单元数量收取的,与数据存储量无关。每个计算单元每年收取的服务费用在几千元级别(假设集群启动后就一直不停机使用)。
爱分析:云服务合作厂商有哪些?
简丽荣:青云QingCloud是我们的个合作伙伴,也是目前和我们合作为深入的云厂商;另外一个深度合作的云厂商是金山云,产品和商务都在稳步推进。同时,HashData在设计之初就考虑到多云部署的场景,通过将系统的不同组件解耦,降低对特定接口的依赖,方便对接各种开放的云平台。所以,除了前面两个深入合作的平台外,我们的产品也可以在AWS,阿里云和腾讯云上提供服务。
爱分析:目前团队规模怎么样?
简丽荣:近30人左右,大多数是技术研发人员,主要来自Pivotal,Teradata,IBM等外企,以及华为,南大通用,人大金仓等本土的数据库公司。我们计划到年底的时候扩张到40人左右。
爱分析:Hadoop在市场中的渗透率如何?
简丽荣:整体来看,我个人认为Hadoop在市场中的渗透率并没有达到大家当初对它的期望。曾经有那么一段时间,很多搞关系型数据库(无论是单机的还是分布式)的工程师都担心失业,在考虑要不要转去搞Hadoop。不过,从近的一些市场报告数字(包括Gartner魔力象限),在全球数据管理和分析领域,Hadoop占的比例还是非常少,而且随着新的软件架构(如云端数据仓库)的出现,其增长率已经在不断减慢。
爱分析:您如何看待Cloudera的Impala?
简丽荣:撇开个人情感倾向,单纯从技术产品考虑,在所有SQL-on-Hadoop解决方案中,我个人海是很喜欢Impala的。因为没有太多历史包袱,Impala无论是系统架构设计还是具体实现细节都借鉴了分布式计算的新理念和佳实践,虽然跟成熟商业数据仓库系统相比,在分析功能和稳定性方面还有很大改进的空间。
爱分析:怎样看待云数据仓库市场渗透率的?
简丽荣:总的来说,在中国市场,目前云数据仓库的市场渗透率还是非常低的。进行云计算相关的市场分析的时候,我个人喜欢参照美国的云计算市场。我们一般认为,中国的云计算市场落后美国5年左右。
在美国市场,虽然像AWS Redshift和Google BigQuery这类云数据仓库很早就推出(那时Snowflake公司才刚刚成立),但到2015,2016年的时候才开始取得商业上真正大的进展(Snowflake也是在那个时间段才将产品正式推出市场)。
基于落后5年的推断,我们认为2020年左右,国内共有云数据仓库渗透率才会有明显的提升。不过,在此之前,我们可能能够在私有云数据仓库服务市场看到一些有意思的进展。
爱分析:云厂商是否会进入云数据仓库市场?
简丽荣:会的,无论是在海外还是国内,主流的公有云大厂都已经开始提供自身的云数据仓库服务。但是,我们并不畏惧与这些大厂直接的竞争,主要有如下两方面:
技术产品:虽然公有云大厂总的研发资源很强,但具体到某细分的产品线,如云数据仓库,我们非常有信心,无论是技术积累、产品理念还是研发投入,我们丝毫不弱于国内任何一家公有云大厂,很多方面甚至领先不少。
商务考虑:为了提高议价能力和系统高可用性,多云部署在海外应该成为大多数大中型企业的,而不是被某个云厂商锁定。我们相信,国内企业很快也会接受这一理念。在这种大背景下,作为独立的、支持多云部署的第三方云数据仓库服务提供商,相对于公有云大厂,我们有着超越技术产品的优势。
Snowflake在海外市场的快速崛起证明了,即便在巨头林立的、竞争激烈的云端数据仓库市场,依靠出色的产品、高性价比以及专业的服务,独立的第三方提供商也是可以取得商业上成功的。
爱分析:未来,HashData会向哪些方向延伸?
简丽荣:总的来说,我们未来主要会向如下三个方向延伸:
1.围绕着数据仓库的场景进行更好地垂直整合:因为继承了Greenplum标准的JDBC和ODBC接口,HashData能够跟大多数主流的ETL和BI工具无缝集成,但这些第三方需要用户自己去安装部署。为了让用户更便捷地使用HashData,我们将会在产品的控制台集成免费的、基础的数据库管理、SQL编辑器、ETL和BI工具,以及底层对象存储数据管理功能。目前我们从客户那边收到不少反馈,他们希望在早期简单功能验证的阶段,尽量避免花时间精力去安装部署第三方的工具。
2.跨数据中心和云平台的数据共享:HashData的元数据服务是通过全球可访问的分布式系统提供的,负责数据持久化的对象存储通过HTTP RESTFUL接口提供互联网访问能力,中间的计算层是完全没有状态的。在这种架构下,我们能够在不同的数据中心和云平台创建不同的物理集群,并让这些集群看到统一的数据逻辑视图,从而提供跨数据中心和云平台的数据共享能力。我们认为,随着应用代码多云/混合云部署的理念逐渐被市场接受,这种需求会越来越强烈,毕竟像Cloud Foundary和OpenShift这类PaaS只能实现应用代码在不同云平台上面的平滑迁移,其中很多应用是数据驱动的,缺少数据迁移或者共享的情况下,这些应用代码是无法正常运行的。
3.数据服务:随着使用我们平台的客户基数逐渐扩大,我们会在平台上面提供常用的、经过清洗处理和转换的公用数据集给我们的客户,例如开放的气象、卫星遥感和交通数据。通过我们提供的数据服务,客户可以把主要精力放在挖掘数据价值上面,而不是像现在这样每天花80%的精力在开放数据集的收集和预处理。另外,基于HashData多集群共享统一数据存储层的架构,我们能够以非常低的成本实现海量数据的数据服务,数据只需要保存一份就可以无缝地提供给多个用户使用,而不是每个用户自己都保留一份。
爱分析:是否有国外对标公司?
简丽荣:在《2017年互联网趋势》报告中,“互联网女皇” 玛丽.米克尔列举了三个云端数据仓库的代表产品,分别是Google BigQuery,AWS Redshift Spectrum和Snowflake。产品功能层面,它们的共同点都是近乎无限的扩展能力,按需付费,以及少的运维需求。
公司层面,前两者都是云计算巨头自己提供的数据仓库服务,后者是一家独立的创业公司。从这个意义上,我们更愿意将Snowflake当成海外对标公司,而且产品架构层面,HashData与Snowflake也是这几个产品中接近的。在国内大家可能对Snowflake不是很熟悉,这里多说两句。Snowflake这是美国近几年发展迅猛的大数据公司之一,成立于2012年,2015年中产品发布,预计今年营收将超过1亿美元,并在今年初完成2.63亿美元的E轮融资,估值15美元。
文章来源:微信公众号:爱分析ifenxi。
相关文章