分享
Scan me 分享到微信

黎超:大数据时代的高性能GIS数据分析平台

GREENPLUM的出现,使得大家可以用比较低廉的成本获取基础软件平台和基础硬件平台,把更多的投入放到应用需求层面,来降低总体应用成本和总体使用成本。

   3sNews讯 为期两天的2012地理信息开发者大会(简称:WGDC)在北京国家会议中心举行,本次大会以“新技术、新模式、新商业”为主题,是地理信息领域最具影响力的技术性盛会,其宗旨是不断引领和促进地理信息技术的创新与变革。在第二天分论坛三:云计算与智慧城市分会场,EMC GREENPLUM架构师黎超先生发表了题为《GREENPLUM——大数据时代的高性能GIS数据分析平台》的演讲。

泰伯网
EMC GREENPLUM架构师黎超
 

  以下为文字实录:

  很高兴有这样一个机会向大家介绍EMC GREENPLUM的产品线,以及GREENPLUM在GIS数据分析平台的功能。

  首先,我们认为大数据时代GIS数据分析平台会面临一些挑战。首先,在GIS领域有很多大的价值,现在很多企业倾向于更多的原始数据或者叫云系数据进行周期的保留,但传统UNIX为代表的或者集中式的高端存储,在存储上、性能上都没办法很好的完成性能的需求。

  另外,在大数据处理上,比如我们在做堵车分析的场景里面,数据的实时更新率是非常高的,我们要求我们的平台必须具有海量计算的能力,来满足实际的应用需求。在这样的环境里面,传统的数据结构、数据架构,可能也很难满足我们这样的处理需求。还有对数据结构的访问需求,现在我们的数据,尤其在GIS领域,它的结构除了传统的数据以外,还有大量复杂的数据。

  在大数据时代,所有这些问题和挑战会变得更加严峻。那么要应对这样的挑战,在我们的分析需求层面,对系统的可扩展性和我们系统自身扩展能力的摩尔定律之间存在巨大的差异。大家可以看到,我们需要这个系统处理的吞吐能力,跟摩尔定律,CPU也好、磁盘带宽也好,它的发展速度很难满足这样的需求。

  所以,我们认为应对这样一个挑战,云计算平台可以帮助我们从成本方面、性能方面去解决大数据时代GIS遇到的一些问题。比如说,我们通过分布式的存储平台和分布式的数据库平台,满足我们的数据梳理线性的要求。另外,我们可能利用成本可控的X86平台,来替代我们传统高端的UNIX平台,来构建高可用、高可扩展性的平台。另外,我们利用大数据处理平台具有大结构化的混合分析能力。所以,EMC我们认为未来的大数据时代的处理需要进行高性能的GIS数据混合分析。

  下面,我介绍一下GREENPLUM,GREENPLUM在EMC收购之前是一家独立的数据库厂商,EMC除了传统的硬件产品以外,也希望自己运营大数据基础软件平台。07年EMC看到GREENPLUM在数据库产品的领先性以及在这个技术发展道路上的前瞻性,所以决定收购GREENPLUM。

  大家可以看到这张图是EMC云战略的发展,EMC把私有云和公有云这种抽象的概念,具体对应到自己相应的四个产品线,面向海量文件的数据云架构产品线,面向大数据分析的云架构产品线,EMC收购GREENPLUM就是要完善自己的面向大数据分析的云架构产品线。

  在EMC收购GREENPLUM之后,大家可以看到,这是一个著名第三方调查报告盖特纳竞争性的报告。在收购之前,左侧这张图,2010年的时候GREENPLUM还是处于追赶者的角色,仅仅是在技术前瞻性上比较领先,在技术竞争力上是相对比较落后的。在EMC收购GREENPLUM两年之后,也就是今年2月刚发布的数据大家可以看到,EMC在研发上的大力投入,GREENPLUM成长非常快,已经进入到数据库平台的领导行列里面。

  大家可以看到,在EMC收购GREENPLUM之后,它的产品线从传统的数据库产品以及延伸到海量数据库产品线,允许企业的行业专家和数据库专家进行数据混合分析。除此之外,EMC还可以为客户提供数据科学家。在收购之后,EMC的相关产品也发展的非常迅速,在短短的几年之内,在世界的客户总数就已经超过500个,其中不乏一些世界500强的客户,包括AIG、沃尔玛等等。

  下面,我简单介绍一下GREENPLUM这个数据库平台。大家可以看到,GREENPLUM实际上是一个基于MPT架构的数据库集群,它的组成部分有三个部分来构成:一个是智能数据服务器,一个是斯门服务器,以及智能服务器和斯门服务器的集群,这样就构成了MPT架构的数据库集群,这种数据库集群的好处就是,当我有大量的关系型的结构化存储到数据库里的时候,它的数据会被打散到所有运算节点进行存储和处理。比如我有一张网上亿条的记录,我有10亿条斯门节点的话,那么会拆成10份,均匀的放在斯门节点上,当你的数据库下来进行处理的时候,所有的斯门节点进行处理和运算。而GREENPLUM把控制服务器跟存储预算服务器给单列出来,分开处理,提供更好的服务。

  另外,GREENPLUM的一个特点就是数据加载方面,GREENPLUM允许数据源跟斯门节点直接相连,采用并行的方式进行海量数据的加载。这样的结构可以随着我们的运算节点的增加,使数据打的更散,整个数据的处理效果会成线性增长,包括数据的存储。

  我们在这儿把GREENPLUM的技术特点做了一些基本的总结:一个是首先它的集群规模可以支持到超大规模,我们在海外已经有超大节点的例子,在海外也有上百个节点,数TB存储的数据规模。在一个数据库里面,GREENPLUM可以同时进行行列存储,为用户数据访问提供灵活性。另外,无论是行存还是列存,GREENPLUM可以提供比较高的数据压缩比,节省IO效率,提升存储效率。另外,GREENPLUM允许用户灵活分区,比如我可以根据时间、地域,对我的数据进行相应的数据分析,提升我们的数据访问性能。

  同时,它也支持多种索引,都可以在GREENPLUM里面得到浪费的支持。同样,它具有高可靠性、线性拓展这样的特性,实现结构化、半结构化、非结构化混合的数据分析。另外,GREENPLUM本身带有很多的拓展包,比如说一会儿要介绍的PostGIS这样的引擎,还有R语言,都可以在GREENPLUM数据库引擎里面进行并行化的数据处理。

  下面我来介绍一下PostGIS,PostGIS实际上是对POS3数据库提供的地理信息数据处理引擎,PostGIS是开放GIS的支柱软件之一,GIS本身只是GIS所有的规范,所以大家的应用,比如基于UB的或Google maps的应用可以直接用PostGIS作为支撑。所以PostGIS引擎的数据我们都可以通过ATI进行数据访问。在PostGIS引擎里面提供了300种以上的跟地理空间信息处理有关的函数。所以大家在进行编写的时候可以很方便的对这些函数进行相应的调用。

  在访问方式上,本身也支持多样的访问方式,比如我们可以通过传统的方式对PostGIS引擎数据进行输出。如果我们运用一些开源或者商业化的软件,让它支持PostGIS的标准进行输出。在数据加载上也支持多种数据加载方式,在PostGIS引擎中都可以得到非常好的支持。所以大家可以看到,支持GIS系统的典型结构,我们可以把Shapefiles导入到PostGIS,它后端可能是POS3数据库,前面我们可以进行集中展现。这是通过SQL查找特定范围内的公共汽车站的数据,只是简单的调用SQL函数就可以进行相应的GIS运算。这是一个基于WEB服务输出的例子。

  GREENPLUM跟PostGIS的关系是什么呢?GREENPLUM的底层完全是基于POS3开发出来的,也就是说GREENPLUM是基于POS3MPT机构的数据库引擎,所以GREENPLUM跟PostGIS有天然的兼容,我们可以把PostGIS放在GREENPLUM上。当然,GREENPLUM做了很多开发,因为传统的PostGIS是以传统数据库穿行的数据库,单实力的数据库为基础开发的引擎,GREENPLUM在4.2版本当中把里面的函数完全实现了并行化处理。

  在这里面提到了GREENPLUM运行PostGIS的基本优势,首先我们提到了它是MPT架构的数据库,随着节点的增加使得数据的处理效率以及存储能力呈线性的提升。而且,由于它完全基于X86的环境,所以整个性能提升和存储提升成本都是非常低的。第二点,它提高了传统单一Post3数据库的过可用性。第三,在GREENPLUM里面我们提供了很多的分析语言包,比如R语言,集成到每一个斯门引擎上,如果和PostGIS引擎结合在一起的话,可以利用存在GREENPLUM的数据,进行一些高级分析。分布式的集群,如果按传统方式安装,可以造成很多管理上的负担。GREENPLUM提供相应的工具,可以采用批量的方式在所有的服务器上同时部署PostGIS引擎,而且随着你新的节点增加,PostGIS引擎可以自动部署到新增的数据库引擎上。

  GREENPLUM除了关系型数据库平台以外,现在也提供商业化的Hadoop平台,Hadoop恰恰在这个领域有独特的优势,GREENPLUM也正是看到了这一点,所以我们也提供了商业化版本的产品。

  可能大家对Hadoop都比较了解了,我这儿也不多了,简单说一下Hadoop实际上是个开源项目,基于Google的白皮书和Google文件的绝大部分平台,雅虎完成了Hadoop绝大部分初始设计和开发。这是典型的Hadoop结构,会把它分成若干个小块,分布存储处理,所以者Hadoop本身有良好的可扩展性。

  Hadoop跟关系型数据库之间的关系并不是替代关系,Hadoop与关系数据库互为有益补充,Hadoop适用于无因果关系的非结构化数据处理与分析,复杂的并行数据ETL,比如海量Shapefile的存放和处理。关系数据库用于强因果关系的结构化数据处理与分析,传统的Hadoop完全是开源的,很多传统企业,不像一些互联网企业有很强的自主研发能力或者管理能力。它更多的是希望厂商来提供相应的服务。

  另外,GREENPLUM的Hadoop完全用C进行了改写,传统的Hadoop完全是基于JAVA的,实现了C的效率更高,大家就可以利用一个非常低廉的成本获得一个超大的可扩展的存储池,以前凡是基于NFF开发的图形化应用不需要根本性的修改,就可以得到很好的效率,得到扩展能力很强的平台。另外,GREENPLUM的Hadoop可以实现异地的数据复制,比如说北京一个站点,上海一个站点,我可以让这两个站点之间形成父辈关系,完全可以做到两个大集群之间数据的双向复制的能力。

  Hadoop自身在GREENPLUM和数据库引擎上做了大量工作,数据库引擎不仅仅是可以把Hadoop当成存储来使用,除此之外GREENPLUM可以直接去调度Hadoop引擎自身的运算能力,完成数据处理,把数据处理完的结果返回到数据库层面,跟关系型数据库进行结合,得到最终的结果,让开发者不至于在开发理念上有巨大的变化。

  EMC在收购GREENPLUM之后,也提供了这样的一体化设备,主要就是简化用户的集成工作,EMC的这种一体化设备除了可以支持数据库模块以外,可以在同一个机架里面集成SAS这样的数据挖掘模块,可以帮助用户最大程度的节省他的宝贵机房的空间。

  所以,GREENPLUM的出现,使得大家可以用比较低廉的成本获取基础软件平台和基础硬件平台,把更多的投入放到应用需求层面,来降低总体应用成本和总体使用成本。

  我的介绍就到这里,如果大家有兴趣可以到EMC的展台上去拿到相关的GREENPLUM介绍,另外如果大家填相应的调查表有小礼品赠送给大家。

  谢谢大家!

  (以上内容根据速记整理,未经本人审核)

喜欢您正在阅读的内容吗?欢迎免费订阅泰伯每周精选电邮。 立即订阅

参与评论

【登录后才能评论哦!点击

  • {{item.username}}

    {{item.content}}

    {{item.created_at}}
    {{item.support}}
    回复{{item.replynum}}
    {{child.username}} 回复 {{child.to_username}}:{{child.content}}

更多精选文章推荐