大数据云化方式

发布时间:2017-03-01 作者:关涛(中兴通讯)

      随着网络信息化应用的普及,各种信息系统采集、输出的数据量也越来越大,这促成了大数据系统的诞生和发展。顾名思义,大数据系统一般用于处理海量数据的情况,其运行时需要基于存储、计算集群的环境;而云计算则是另一个技术范畴,在前几年一度是非常热门的话题,现在逐渐进入实际应用阶段,有不少单位都开始建设自己的云计算环境。

 

  大数据系统最初是基于物理机环境部署,并取得了较好的大数据分析运算效果。随着大数据应用的普及,出现了更多的应用场景,例如快速部署使用然后立即释放的临时集群,以及规模可变化、满足伸缩性要求的集群等。从根本上说这些应用场景的出现是要求降低大数据的使用成本,其特性可归结为快速部署及释放、集群规模弹性伸缩、利用现有云设施资源、多个用户群体共用大数据服务等几个方面,这正是大数据云化所涉及的内容。

 

  大数据的云化包含两个层次:一是把大数据部署在云系统上,即底层运行基础设施的云化,对运维人员和系统所有者有较大影响;二是对上层提供的大数据服务的云化,对使用大数据的人员有影响。

 

 

大数据基础设施云化

  

  不同的单位、项目,其大数据运行的基础设施不同。比如大型企业,很可能建立了自己的通用型数据中心,拥有较多的业务种类,其中一部分需要使用大数据。这种情况企业会希望大数据集群也能在现有的数据中心上部署运行,以便使用数据中心的资源。这样的数据中心,客户往往有应用的部署管理方案,大数据使用其中部分资源,需要考虑的是大数据平台自身在数据中心IaaS系统上的部署。

 

  大数据在数据中心IaaS上的部署有手工和自动两种方式。手工方式需要较多地人工操作IaaS系统。自动方式效率高、部署便捷。但这种方式需要一个新的子系统,该子系统和IaaS交互,从IaaS申请计算、存储、网络等资源,并构建大数据集群。由于市场上的IaaS种类较多,这种方式需要能适配不同的IaaS系统。对于大数据平台提供商,较合适的方式是选择业界主流的IaaS系统进行适配,以及支持自己所处市场的主要客户所用的IaaS系统,如图1所示。

 

 


 

 

  在IaaS系统上部署大数据平台,目前业界几个大数据厂商都有自己的解决方案,整体思路大同小异。例如Cloudera开发了Director子系统,在自己的Enterprise发行版中提供,并未开源,可见Cloudera把对IaaS的支持视为商业方面较关键的特性,是和社区版进行区分的一个重要标志。Hortonworks、MapR等也有把自己的大数据系统部署在IaaS上的能力。

 

  对于业务种类不多的企业或单位,其业务和大数据有紧密关联,或者直接是从大数据发展而来。和业务种类较多的企业不同,这些企业使用的主要是大数据业务,建立的数据中心可以称为大数据中心,在大数据中心上构建自己的业务应用。这个大数据中心是企业专用类型,可以由企业自己建设。

 

  企业在建立自己的大数据中心时,会根据自己的业务场景、技术储备等选择自己的大数据云化路线。和通用的数据中心不同,这种特地打造的中心可能不会选择一个厚重的IaaS层,而是会根据自己的情况选择一个较轻量的方式,并在其上部署大数据系统。目前业界常用的方式为选择容器化技术和一种资源管理系统,根据情况再叠加一个部署系统来实现大数据的云化,如图2所示。这种方式是把大数据部署在容器上,也可以说大数据中心以大数据PaaS的形式出现。


 

  当前业界的一些互联网公司,其数据量较大,业务基本是围绕大数据进行处理。这些情况下,企业很可能会选择自己建立大数据中心,技术路线也往往是自己选择,各个公司的大数据云化技术各不相同,具有自己的特点。yarn、mesos、k8s以及各种相关技术都可在这些大数据中心看到。

 

  大数据底层基础设施的云化,具有控制部署成本等方面的益处,但同时要注意到,基于云化设置会丢失一定的物理机部署的特性,对大数据集群整体的性能、可靠性、资源使用效率等可能会有一些影响。

   

大数据服务云化

 

  大数据服务的云化,主要是将一个大数据中心的服务能力进行虚拟化,多个用户群体可共用服务能力,但单个用户群体有类似独占的使用体验。即真正提供服务的是一个共用的大数据中心,使用服务的可以是多个不同的用户群体,各用户群体互相隔离,单个用户群体在限定的范围内使用大数据的服务,如图3所示。鉴于大数据中心往往需要大量的资金、人力的投入,为单个用户群体建立专用中心是不现实的,因此大数据服务的云化在这些场景很有价值,也可能是必须的选择。

 


 

  要实现大数据服务云化,需要限制用户群体对大数据中心的占用。首先要对用户群体可用的数据进行隔离,以保证多个用户群体在同一个大数据集群上的各自数据不会混淆,不会出现未经授权的访问。其次需要对执行作业所需的计算、网络资源进行隔离,以保证各用户群体的作业在为自己分配的范围内运行,不会挤占其他用户群体的资源。为用户群体分配好资源后,用户群体可在此范围内安排资源的使用、观察、统计等工作。云化的服务可以提供一个用户自服务的渠道,供用户自行管理可用的资源、数据等内容。在使用过程中,会需要一些其他功能,如用户验证、访问管控、审计,以及对资源使用的计费等衍生问题的处理。

 

  大数据服务的云化,可以在多个用户群体间平摊大数据中心的建设、运维成本,提高大数据中心的使用效率。对单个群体而言,也省去了维护大数据系统带来的庞大资金、人力投入,有助于降低大数据的使用门槛。

 

  中兴通讯是大数据系统提供商,拥有自己的大数据发行版本ZDH。在物理机部署方式之外,也会为用户提供多种IaaS系统上部署ZDH的能力,支持业界主流的云系统,例如vmware的云设施、openstack等IaaS系统,提高在云设施系统上的部署效率;在没有IaaS的场景,提供容器化的部署方式,以提高全生命周期的效率。在大数据云化服务方面,ZDH的ODPP系统为用户提供大数据服务能力的云化。ODPP将一个大数据集群进行逻辑切分,为不同的用户群体提供多个大数据处理空间,各用户群体在各自的空间内使用大数据集群提供的大数据存储、处理等服务能力,相当于各用户群体都拥有一个独立的大数据集群,并可对各自空间的资源、权限等进行分配和管控,实现各个空间的数据、资源的隔离。ODPP还额外提供一些服务管理类的功能,供用户自行处理数据、管理空间,例如空间管理工具、数据传送工具、图形化的管理界面等。通过ODPP对ZDH大数据平台服务的云化,用户能更方便地使用ZDH涵盖的大数据服务。

 

  通过在云化的基础设施上的部署,大数据系统降低了建设、部署、运维等环节的投入,有助于提升大数据系统的部署数量。另一方面,通过服务能力云化,降低了使用门槛,有助于大数据应用的普及。通过这两个层次的云化,大数据必将在生产、生活中提供更多的服务,产生更大的影响。