专家师资 iis7站长之家
技术论坛您的位置: 永盛彩票app >技术论坛 >

武新:国产数据库创新之路

发布日期:2017-04-14 10:02:59    供稿中心:
前言:     

 

2016年3月,由中国首席数据官联盟发起,北京大学信息化与信息管理研究中心、中国新一代IT产业推进联盟协办的“影响中国大数据产业进程100人”大型人物专访活动全面启动,被采访对象分别来自政府、产、学、研、企各个领域,他们将从不同角度,不同层面向大家阐述当前大数据产业热点、难点、疑点问题,为中国大数据产业健康、持续发展探索经验、保驾护航!

 

第六十三期专访人物

 

首席数据官联盟专家组成员 

天津南大通用数据技术股份有限公司CTO

武新

 

刘冬冬: 在你看来,云计算对传统数据库发展有何影响?

 

武新:其实“云计算”和“大数据”是一个硬币的两面。云计算改变了用户对IT资源的使用模式和习惯、提升了资源的使用效率和灵活性、优化了IT的投入产出、正在改变整个IT生态环境。而大数据首先是数据,以及从数据中能够提取出的潜在价值。

 

云计算对数据库的发展带来了新的需求和挑战,这些需求主要体现在数据库的部署、资源隔离、对虚拟环境的支持以及新的数据库产品等方面:

 

1. 在云环境下数据库的自动一键式部署:这种需求所有的成熟数据库软件都很容易实现。

 

2. 资源隔离能力:主要体现在多租户的需求。也就是说在一个数据库实例下实现物理上的资源共享,但逻辑上的数据隔离,保证不同租户之间数据是安全和隔离的。

 

3. 对虚拟环境的支持:主要体现在对虚拟机的支持。目前所有的数据库软件都可以支持主流的虚拟环境,唯一需要注意的是承载数据库实例的虚拟机需要跑在性能好的底层存储上,否则虚拟IO可能造成数据库性能大大下降。

 

4. “云数据库” 的兴起:传统数据库部署在云环境对数据库本身并没有什么技术上的挑战,但最大的问题是虚拟机是部署在物理机器上的,而目前一个虚拟机最多能够使用一台物理机的CPU和内存资源,对虚拟机中的数据库的扩展性是巨大的限制。这种部署方式只适合小型的、非核心的数据库应用。

 

对于大型的核心应用,需要新一代的基于分布式和大规模并行计算(MPP)的数据库来支撑。这类数据库产品目前主要解决了大规模数据分析的问题,对于大规模事务处理(OLTP),基于分布式的数据库系统开始出现并逐步成熟。这类数据库系统才是真正意义上的“云数据库”,是未来数据库发展的主要方向。

 

刘冬冬:  大数据时代,企业对数据库又提出哪些更高要求?

 

武新:大数据对数据库和数据处理技术带来的挑战比云计算要大得多, 这也是数据库技术需要创新和演进的关键点:

 

1. 数据类型:

 

大数据对数据类型不再局限于结构化数据,而是需要处理各类数据,包括结构化、半结构化和非结构化数据。结构化数据过去几十年一直占据各行各业的核心,也是关系型数据库最擅长处理的数据。

 

40年前基于结构化数据出现了关系模型理论和SQL标准,产生了一系列关系型数据库产品,创造了千亿美金的市场,造就了像Oracle这样的世界500强软件和数据库公司。但大数据除了需要处理结构化数据外,更需要处理量级更大的半结构、非结构化数据,比如日志、网页、文档、图片、语音、视频、以及各类专业数据(地震、气象、遥感、基因、等等)。

 

对于半结构和非结构数据,关系型数据库是无法有效处理的。这就需要新的技术和计算模型,对半结构、非结构数据进行特征提取,转化成结构化数据进行进一步的分析、挖掘。

 

2. 数据规模和并发规模:

 

随着互联网的出现、全世界每天产生的数据规模在指数级增长。而移动、智能终端、各类传感器进一步加速了数据的产生。对于企业和行业用户来说,虽然数据增长没有互联网公司那么快,但随着IT系统的集中化、互联网化和移动化,传统行业IT系统的压力也在快速积累。

 

传统基于SMP垂直扩展的架构已经走到了尽头,基于这种架构开发的传统数据库产品本身也越来越受到SMP架构的制约和限制。这不仅仅是数据库软件本身的问题,而是整个架构以及基于这类架构开发的软件的核心问题。

 

其解决的方向是所有的软件,包括数据库软件,必然朝着MPP大规模并行计算和分布式系统架构发展,用横向扩展的集群来解决垂直扩展架构下计算、存储、并发能力不足的问题。我们正在从GB,TB的时代走向PB,EB的时代。

 

3. 计算模型:

 

大数据的多样性对计算模型的要求也越来越多样化。虽然基于传统数据库的关系模型仍然是主流,但对于复杂的数据挖掘、机器学习算法,基于关系代数的SQL并不是最佳的选择。

 

另外,对于类似图数据(Graph),流数据,实时数据等特殊类型和场景的数据处理需求,传统的关系型数据库也不是最优的。这里也需要新的技术和引擎对关系数据库扩展或补充。

 

4. 数据采集、处理的实时性:

 

传统的企业应用对数据的实时性要求主要在数据的采集上,也就是说基于OLTP的业务系统上。对于数据分析系统(OLAP)往往满足于T+1或者T+n的模式,也就是说对业务数据分析的结果可以等待1到n天。

 

这种模式现在越来越无法满足业务需求了,主要的原因是业务系统越来越需要组合历史数据和实时数据更好、更有效的提供服务、并同时降低和阻止各类IT风险。而在同一个数据库引擎中同时有效支撑OLTP和OLAP是个矛盾的问题,随着数据量和并发的增加,这种矛盾会更加尖锐。

 

目前的趋势是将OLTP与OLAP系统分别用不同的数据库引擎和系统搭建,两个系统之间实现基于数据库日志(redo log)的实时数据同步,最终实现大规模的基于不同数据库引擎的读写分离。

 

5. 数据资产和生命周期:

 

大数据虽然可以产生前所未有的价值,但大量的数据如果管理不当也会变成一个企业的包袱。数据跟其他资产一样,需要技术和方法进行生命周期管理,需要对热数据、温数据和冷数据采取不同的管理策略。

 

6. 数据处理的性价比

 

降低处理每一个TB数据的性价比(TCO)也是一个很大的挑战,数据量的快速增加也意味这IT投资的增加,如果降低处理数据的成本对大数据落地是一个核心问题。目前主要通过使用通用的软硬件,数据压缩去重技术,数据库的自动优化技术等来降低IT成本。

 

刘冬冬:如何看待当前中国自主发展新型数据库面临的机会和挑战?

 

武新:中国拥有世界上最大的人口,随之而来的也同时拥有世界上最大规模的数据量、最复杂的应用和最急迫的发展需求,我们的金融、电信、保险、电力等一系列行业都是世界上数据规模最大的,应用最复杂的,但我们的基础软件发展(包括数据库)长期以来是比较薄弱的。

 

随着大数据和云计算时代的到来,这个矛盾变得更加突出,中国需要大力发展自己的新型数据库和数据处理核心技术。新的数据技术和架构过去10年不断涌现,而且还在不断的发展,面临的机会主要体现在下面几个方面:

 

1. 大规模的分布式并行系统在数据分析领域正在逐步替代传统关系型数据库,这类分布式系统的代表主要是新一代的MPP数据库和基于Hadoop的技术。 这两类技术都是基于大规模并行计算框架、使用通用的操作系统、服务器、存储和网络来达到很高的横向扩展能力。

 

业内先进的MPP数据库单个集群已经可以达到300节点以上、30PB的数据管理能力,多个集群通过类似dblink、实时同步技术的集合可以超越1000节点。Hadoop集群的规模更大一些,可以超越几千个节点。但MPP数据库和Hadoop在对数据处理上个自有优势和短板。 

 

MPP数据库是基于关系模型和SQL的标准的并行分布式数据库系统,在保持了关系型数据库优势的同时提供了很好的横向扩展能力,可以真正满足目前对海量结构化数据的管理和复杂分析。

 

这类MPP数据库主要应用于新一代的数据仓库、决策分析系统、报表系统、多维分析、即席查询等应用中,并可以跟OLTP业务系统形成大规模的读写分离的系统。

 

而Hadoop更适合做为大数据的数据存储平台(文件系统),并行计算平台(ETL、各类复杂的机器学习算法)和类似KV、Stream、Graph等非关系模型的数据处理。

 

2. 在交易型(OLTP)的数据处理领域,传统数据库仍然占据主导地位,除了商用的数据库以外,开源的数据库MySQL,PostgreSQL也属于这一类。

 

但这类数据库的扩展能力也受到SMP架构的限制,类似互联网的应对并发的要求往往超越一个数据库可以支撑的能力,基于类似MPP分布式架构的OLTP数据库系统也开始出现。

 

目前比较可行和成熟的是类似分库、分表的技术,通过把数据分布到不同服务器上达到提升并发和数据处理量的效果。这类数据库系统往往对上层的应用不能完全透明,需要对已有的应用系统改造,来适应这种分库分表的数据存储和管理模式。目前这类系统主要应用在互联网公司,并开始在行业用户尝试。

 

3. 混搭架构和异构引擎的融合架构产品:这类技术和产品我们和国外数据库巨头几乎是在同一起跑线上,这提供了缩短了技术差距的机会。

 

不同的应用对数据库提出不同的需求,例如事务型,分析型,流处理,图计算,批处理等,因此要求需要支持多种数据库进行混搭的能力,没有一种数据库可以解决所有的问题,当多种数据库进行混搭后,对于混搭后的系统就将提出统一访问,统一接口,统一语言,统一元数据,统一安全,统一事务,统一调度,统一日志,统一监控等需求。

 

4. 中国拥有最大的数据规模,最复杂的应用范畴和客户群体,中国的企业信息化起步较晚但提供了后发的优势。这些为我们提供了世界上最好的发展机会和需求环境,如果能够把控好技术方向、持续在核心产品上加大研发投入,积极响应和满足客户的实质性需求,将非常有利于在中国产生世界级的产品。

 

目前面临的主要的挑战:

 

1. 技术和人才积累方面与国外数据库巨头还有差距。

 

2. 品牌及客户的认可度,这是需要时间沉淀和积累的,是国产数据库的劣势。

 

3. 数据量和应用需求爆炸性的增长,刚才提到了这是机会,但同时他也是巨大的挑战,我们目前面临的数据量和应用复杂度是前所未有的,这就需要数据库厂商加大研发和技术投入。

 

4. 传统数据库已经建立起自己完整的生态,中国自主发展的新型数据库需要从头开始建立生态,从芯片,到操作系统,中间件,商业智能化工具,应用开发商以及培训教育,全产业链需要建立生态,这是最大的挑战。

 

刘冬冬:南大通用数据自主数据库产品有哪些技术创新?商业应用如何?

 

武新:严格来说,南大通用已经不仅仅是一个传统意义上的独立数据库产品提供商,而是一个大数据处理平台厂商,我们已经拥有世界级的传统数据库的全线产品,并基于自己的核心数据库产品(GBase8a分析型数据库集群、GBase8t事务性数据库、GBase8m内存数据库)结合Hadoop生态打造了一个超融合的数据平台级产品GBaseUP。

 

1. GBase 8a MPP Cluster (a=analysis) 核心技术创新: GBase 8a 分布式并行数据库集群技术和世界类似产品同步并拥有部分领先的技术。主要体现在:

 

a) 独特的列存储,智能索引,压缩,大规模多层并行框架,数据库内置的全文索引,高效的分布式执行计划,基于规则和成本的分布式SQL优化器,全面的高可用能力(集群级,节点级,进程级的全方位的高可用保护),透明加密,主副本数据的自动恢复,集群间dblink,集群间双活,在线扩容,多分片,先进的联邦架构,虚拟集群,跨数据中心的分层集群等核心技术。

 

b) 超高可用性:分布式一致性服务、集群调度层、存储计算层分离部署,并分别采用了高可用技术(调度多实例、存储多副本、集群间同步容灾等),在一些极端异常情况下仍可提供服务。

 

c) 高存储密度:单节点支持100TB存储规模,采用了压缩、存储优化等技术。

 

d) 高效的计算性能:依托于智能索引、列存储、高效压缩、多层次并行计算(节点内、节点间)、高效的分布式计算优化器等。 目前在标准的TPC-H, TPC-DS测试中已经超越了国外的其他产品,走在了业内前列。

 

e) 超大的集群规模:依托于先进的联邦架构、基础网络服务、高效的数据传输服务等核心技术实现了超大规模的MPP并行数据库集群。目前已有单集群100节点以上上线项目,在支撑国内电信(中移动总部)、金融(农业银行)、军队、政府(海关总署)最大的数据仓库和分析平台。

 

f) 从客户应用来看,GBase 8a MPP Cluster自2016年起已经是国内市场占有率第一的MPP数据库产品。到2016年底上线节点超过2500个,管理的总数据量超过20PB、国内外客户超过300个。在金融、电信、政企、安全、军工等行业有广泛应用。典型案列如下: 银行最大数据仓库:农总行620节点,6PB数据;电信最大数据仓库:中移动总部集中经分数据仓库300节点,8PB数据;军队最大数据仓库:已上线120节点,三年内达到几千节点; 政务最大数据仓库 :海关总署所有数据分析项目超过100个节点等。

 

2. GBase UP (UP=Unified Platform) 核心技术创新: 这是业内第一个基于融合架构的关系与非关系模型、OLTP与OLAP融合的平台产品,是面向企业大数据支撑的融合平台产品。

 

a) 多引擎并存:GBase8a、GBase8t、GBase8m、Hadoop,各引擎可适用于不同类型需求,数据分治。

 

b) 跨引擎访问能力:统一入口,支持异构引擎高效、透明访问。

 

c) 跨引擎数据交换:底层打通,提供OLTP->OLAP->Hadoop的高速数据通道。

 

d) GBase UP 自2016年发布后,已经开始电信、金融、安全领域应用,并通过合作伙伴出口到国外。

 

刘冬冬:数据库技术和商业模式有哪些新的发展趋势?

 

武新:

1. 平台化或者叫“数据云”化。

 

2. 软件层面的超融合:内部处理技术专业化、分治化,外部表现统一化,将底层的硬件完全用软件定义。

 

3. 资源的池化:提供很好的硬件资源弹性扩展,没有任何单点故障风险,具有很强的硬件容错能力。

 

4. 统一架构:流式实时计算、批量准实时计算、离线计算的统一框架,统一元数据管理,统一事务一致性,统一数据流转机制。

 

5. 多中心:多中心方案除满足灾备需求外,多中心应具备准实时的事务同步能力,多中心同时具备数据分析能力,即“多活”数据中心。

 

6. 弹性计算:数据库集群(尤其是MPP集群)规模达到1000节点以上。

 

7. 大数据库处理技术为MPP和hadoop, 两种大数据技术将相互借鉴,共同发展。数据库将提供统一平台类的产品,将融合MPP和hadoop各自的产品优势。

 

8. 未来数据库技术要适应硬件的发展,对新硬件的支持,例如FPGA、GPU、NVMe,并根据硬件的能力需要对数据库的软件架构进行相应调整来充分的利用硬件的能力。

 

9. SQL的不断增强: SQL的功能和性能会不断增强,除了关系模型外,流、图等数据结构也将可能用SQL直接访问。 机器学习算法和一些复杂的挖掘算发将会用SQL或者存储过程来调用,大大降低用户使用这类高级工具的门槛。因此SQL在企业级数据应用中的地位不是削弱,而是在不断加强。

 

10. 随着物联网的发展,嵌入式数据库将迎来发展机遇。

 

11. 在商业模式上,公有云和私有云技术将广泛应用,公有云主要应用于政府等部门;而金融,电信安全等对数据敏感部门主要创建私有云,数据库将部署到公有云和私有云中,对外以标准接口的方式提供服务,数据库不暴露给用户。用户除了继续购买软件许可的方式使用数据库外,将越来越多尝试“云”服务租的方式来使用数据库或者使用更高级的数据分析服务。