GBase 8a MPP Cluster与Hadoop混搭解决方案
杨伟伟:各位嘉宾,大家上午好,非常高兴今天能有机会就通信行业中大数据的应用于在座的各位进行探讨,并希望得到大家的指导。

南大通用产品行销部副总经理 杨伟伟
我今天介绍的主题是MPP数据库与Hadoop混搭技术架构支撑的大数据平台。如果说我国三大运营商所拥有的战略数据是一个非常宝贵的金矿,那么混搭架构的大数据平台将起到采矿机的作用,帮助我们的企业快速挖掘其数据内在的价值。我的介绍分三部分,第一部分来讲解大数据时代各技术架构的特点,第二部分介绍GBase 8a MPP Cluster与Hadoop混搭的解决方案,这一部分将通过平台架构、数据流向、统一管理来进行介绍。最后一部分通过实际案例来介绍混搭解决方案在实际项目中的应用,以及解决实际项目中什么样的问题,并最终为我们的企业客户带来什么价值。

大数据时代各技术架构的特点
大数据从宏观来看分为大交易数据和大交互数据,大交易数据主要是为企业用户提供服务,大交互数据主要为我们的移动终端互联网用户提供服务,这两种数据之间不是独立的,他们之间是有相互之间的关联关系的,大数据势必要将这两种数据进行集成与融合,形成统一的大数据处理与分析平台,从应用的角度来说,大数据在各个行业都有实际的应用,比如金融行业的金融违规纠察,电信行业的交往圈识别以及互联网营销行业的网络客户识别等。大数据平台要能采用某种技术对这些应用产生的数据进行分析。

大数据处理平台都采用什么样的技术来对应用产生的大量数据进行分析的呢?无外乎使用MPP数据库和Hadoop技术,MPP数据库具有天生的优势,支持关系模型,采用标准的SQL语句,适合大数据的分析,主要用在数据仓库,大数据规模数据分析处理应用中。而Hadoop依据键值对存储以及MR/RDD算法,更是对存储板结构化和非结构化数据,主要用于简单、批量的查询作用。进一步来讲MPP数据库的技术优势在于支持复杂的关联查询,支持存储过程,适用于低成本构建的数据仓库平台,运行与传统数据库一样的SQL语句,体积比较大,响应速度比较快。MPP数据库在某些场景下其实并不是很擅长,比如对非结构化数据的处理,以及需要灵活的定制开发算法实现的函数,MPP数据库并不是很擅长,而Hadoop的优势更多在于海量优势的简单、批量查询作业,可以通过MapReduce定制开发算法,灵活性比较好。但是Hadoop在某些场景下也不是非常适合,虽然Hadoop平台提供了灵活的开发算法,但是由于开发的插件比较个性化,不具备一定的通用性,同时如果在Hadoop平台上片面的模拟SQL语句来去做复杂的关联查询实时作业,往往会起到事半功倍的效果。在座的各位也知道,我们现在在电信和金融行业有90%以上的数据库应用都在使用存储过程来进行开发,因此传统的一套技术架构来解决大数据时代的问题,不能满足大数据时代的要求,未来的大数据平台一定是采用不同的技术,各有所长,混搭使用,给客户提供整体的大数据解决方案。

大数据平台势必采用分而治之的的数据处理解决方案,将传统的事务型数据库、新型MPP数据库和Hadoop相融合,发挥各自技术架构的优势,形成统一的大数据平台,最终为我们的企业用户提供服务。
GBase 8a MPP 数据库与Hadoop技术混搭的解决方案
这一部分将通过整个方案的系统架构、数据流向、统一接入管理等方面来进行介绍。

首先来看平台的系统架构,混搭方案的系统架构一共包括三层,ETL层,数据处理层和统一接入管理层。ETL层主要用来处理各种类型的数据,既可以采用传统的ETL工具,也可以采用基于Hadoop搭建的云化ETL工具。数据处理层主要是对ETE层处理之后的数据来进行存储,并做深度的数据加工。在数据处理这一层可以采用MPP数据库搭建的数据仓库,也可以采用Hadoop平台搭建的协处理库,来支撑整个数据处的数据处理。
MPP数据库和Hadoop之间要能通过某种方式来实现数据的交换,统一接入管理层,用来协调MPP数据库和Hadoop之间的任务调度,同时提供标准的统一访问接口,供我们前端的应用调用。在混搭的大数据平台中,从数据组织的角度来看,底层的数据源是整个大数据平台的一个数据来源,为我们的大数据平台提供各式各样的数据,既包括结构化数据、半结构化数据,也有非结构化数据,典型的应用是通信行业中的B域、O域和M域的数据。ETE层主要是对底层各种不同类型的数据进行ETE数据的清洗和进一步的数据汇总。ETE这一层处理完之后的数据,要能快速的加载到数据处理层,数据处理这一层通过复杂的统计分析、关联查询以及数据挖掘等技术,对ETE层处理之后的数据进行深度的数据处理,供前端的报表类应用、分析类应用、查询类应用以及日志类应用进行调用。同时在数据处理这一层要能与Hadoop搭建的备份库进行相互之间数据的备份与恢复。
在数据处理这一层,MPP数据库和Hadoop之间是如何进行数据交换的呢?MPP数据库和Hadoop之间通过一个高速的接口通道来完成相互之间的数据传输,这里面就会涉及到这么几部分的数据,首先是在线数据,对于在线数据,MPP数据库与Hadoop之间要能通过一个标准的接口来进行数据的互通。对于离线数据则可以使用MPP数据库和Hadoop各自高效的并行加载工具来完成数据的互通。同时大家也知道,目前有很多的第三方工具也是可以实现MPP数据库和Hadoop之间的数据互通。比如现在在整个Hadoop平台整个生态圈中的Sqoop,它就可以实现MPP数据库和Hadoop之间的实时的数据互通。混搭架构的大数据平台,要能通过某种标准的访问接口,供前端的应用来调用。南大通用提供的混搭架构的大数据平台,通过统一接入管理功能来协调MPP数据库和Hadoop之间的任务调度,同时提供统一的外部接口供应用层访问,应用层可以结合自己的应用特点以及应用所涉及到的数据关联特点,来选择将哪一部分的任务发到MPP数据库以及将哪一部分Hadoop适合的任务发到Hadoop平台中去执行。
下面我举一个例子,来说明混搭架构的大数据平台是如何对应用产生的数据进行处理。我们以电信行业用户位置轨迹数据处理为例,我们知道电信行业每天都会产生十几TB甚至更多的信令数据,数据首先要落到Hadoop平台中,利用Hadoop强大的文本处理能力,来完成数据的汇总、聚集、排序等运算。处理之后的数据要能通过某种方式快速的加载到MPP数据库内,在MPP数据库中,处理之后的数据通过与MPP数据库内存储的用户资料等信息进行关联查询,最终形成用户位置轨迹数据的客户标签信息。整个应用流程的编写只需要通过标准接口即可完成。
以上是我介绍的MPP与Hadoop混搭的一个大数据平台,通过以上的介绍,我们可以得出,混搭平台的优势其实是利用MPP数据库的优势,支持灵活的SQL语句编写,以及可以处理复杂的SQL统计分析逻辑。同时将Hadoop的优势快速查询,混搭之后的优势,应用的范围支持会更广,同时整个大数据处理平台对于数据处理的性能可以得到一个大幅度的提升。混搭的平台由于是将MPP数据库和Hadoop这两种分布式的系统进行一个融合,系统具有灵活的系统设计能力和可扩展性。
混搭架构应用案例
混搭技术架构是如何在实际项目中进行应用第一个例子是某省电信运营商的云经分系统,我们现在看一下这个系统所面临的问题,首先是数据规模呈爆发式的增长,线网的用户量已经达到了7200万,每天日均的数据量将近3个TB,数据规模目前已经超过500个TB,并且正在快速的增长。同时所面临的对于现有的系统查询响应比较慢,而且对于流量分析的支撑不够精细化,流量分析没有达到一个事件级的响应,无法实现精细化的支撑目标。基于对整个项目所面临问题的分析,提出了建设基于开放式X86平台的集群云化架构,基于Hadoop和MPP数据库搭建的大数据处理平台来解决项目中遇到的问题。整个系统架构分为这么几层,这是一个比较通用的系统架构,重点我们来介绍底层的数据处理平台是基于Hadoop搭建的ETE工具,来对数据进行校验、清洗、关联查询等进一步的数据处理。MPP数据库用来处理ETE处理之后的数据,这样大量的结构化数据将在MPP数据库进行处理,处理完之后的数据用于支撑像KPI报表、一经、二经、标签库等应用。整个系统的实施情况采用了62台开放式的X86服务器,其中MPP数据库使用26个集群节点,当前入库的数据规模500TB,每天要完成的业务作业近千个。数据中心的Hadoop平台采用36个集群节点,日处理的数据量3.5TB,整个这一套,单纯从硬件成本来说,投入也就在百万级,而原来老的系统是使用小型机来完成。整体混搭架构的大数据平台实现了从硬件成本上来看,新系统整体的硬件成本降为原系统的十分之一,但是整体的产品性能基本上保持和原系统一般的水平。
第二个案例来介绍某国有大行数据仓库平台,该系统同样面临这么几个问题,首先是分析类的应用遇到了性能瓶颈,其次随着数据量的增加,前端的应用系统以及前端的需求无法得到一个及时的满足,同时随着数据量的增加,宝贵的历史数据和现有的数据是没法得到充分的利用。通过我们对这个系统的分析,同样采用了MPP数据库加Hadoop混搭的整体架构。整个系统的总体架构从逻辑上来说其实是一个比较通用的逻辑架构,其中数据加载层使用基于Hadoop搭建的数据交换平台来完成数据的清洗、质量检查以及对数据的加工、汇总,存储层是用MPP数据库来完成对数据的整体处理,其中在存储层,使用MPP数据库既搭建数据仓库,又以专题的方式来搭建数据集市,从而来有效支撑前端的信用卡分析、内部审计、电子银行等数据仓库的应用。整个系统的实施情况,一共采用了近100台X86的PC服务器,其中存储管理层MPP数据库目前采用的是28个节点,4台加载机,2台万兆交换机。同时每天要处理4000个以上的复杂作业,实际入库的数据量460TB,系统中最大的表已经超过1000亿行,同时每天还在以20亿行的增量的数据在做递增。数据抽取采用Hadoop搭建的平台,一共56个节点,使用4台万兆交换机进行互换,除了进行底层处理,还用于承担存的数据的备份。该系统于2014年的1月份正式上线。
通过以上两个比较典型的案例,我们可以得出MPP数据库与Hadoop混搭架构的大数据平台具有如下几个价值:
•首先是高性能,在混搭方案中MPP数据库与Hadoop各自发挥各自的优势,Hadoop用来承担ETE的过程,MPP数据库负责大量的结构化数据,深度的复杂分析,这样可以打大提高整体平台的响应效率。
•第二是低成本,在上面两个案例中都是采用基于低成本开放式的X86 PC服务器,这样可以有效节省硬件成本。
•第三是可扩展性,混搭方案中提供了较好的一个系统扩展能力,将传统的垂直纵向扩展模式改为水平的横向扩展模式,这样可以保证扩容的过程中业务的连续性。
通过以上的介绍,也希望跟在座的各位来宾和专家进行探讨,作为通信行业所面临的大数据需求,MPP数据库与Hadoop混搭平台将起到很大的作用。
我的介绍就到这里,谢谢大家。