以混合存储模型实现云计算平台对电信海量数据的处理

时间:2022-10-13 02:19:25

以混合存储模型实现云计算平台对电信海量数据的处理

摘要 利用云计算平台获取海量存储空间和弹性计算能力是当前学术界研究的重点和产业界应用的方向。文章提出的海量数据分布式处理模型,基于混合型数据存储,实现一种以数据为中心的、计算密集型的、高经济性云计算平台。实践证明,在海量数据处理方面,该模型可以很好发挥关系数据库和非关系数据库的优点,具有良好的参考示范价值。

关键词 分布式计算 非关系型数据库 海量数据处理 云计算

1 引言

目前网络服务正从传统的“高集中、高成本、低通用”的服务配置向“高分布、低成本、高通用”转变。为了构建出动态的、易扩展的、高性价比的计算和存储平台,目前涌现出了云计算(Cloud computing)等新型网络计算技术及其应用系统,目的都是将客户数据和计算请求部署在大量集中或分布管理的廉价计算与存储设备(如PC)上,利用高效的并行和分布式计算技术,支持应用的快速部署和任务调度,提供数据冗余机制,稳定、快捷地满足用户的各种应用。其中,数据的存储方式是构建云计算平台时需要重点考虑的关键因素。

1970年,Edgar Frank Codd首次提出了数据库的关系模型的概念,奠定了关系模型的理论基础。后来Codd又陆续发表多篇文章,论述了范式理论和衡量关系系统的12条标准,用数学理论奠定了关系数据库的基础。IBM的Ray Boyce和Don Chamberlin将Codd关系数据库的12条准则的数学定义以简单的关键字语法表现出来,里程碑式地提出了SQL语言。由于关系模型简单明了、具有坚实的数学理论基础,所以一经推出就受到了学术界和产业界的高度重视和广泛响应,并很快成为数据库市场的主流。当前的大多数数据主要以关系型数据库的方式进行存储。

随着Web2.0的快速发展,非关系型、分布式数据库存储得到了快速的发展,它们不保证关系数据的ACID特性。非关系型数据库(NosQL)概念在2009年被提出来,其主要特点如下:

(1)松耦合类型:使用松耦合类型、可扩展的数据模式来对数据进行逻辑建模(Map、列、文档、图标等)。

(2)弹性计算能力:以遵循于CAP定理的跨多节点数据分布模型而设计,支持水平伸缩。也即对于多数据中心和动态供应的必要支持,即弹性计算能力。

(3)灵活存储:拥有在磁盘或者内存中,或者在这两者中都有,对数据持久化的能力,有时候还可以使用可热插拔的定制存储。

(4)多数据接口:支持多种的“Non-SQL”接口进行数据访问。

(5)易扩展:NoSQL种类繁多,但是共同的特点是没有关系数据库的关系型特征。数据中间无关系,因此扩展比较容易,同时在架构的层面也带来了可扩展的能力。

(6)大数据量,高性能:NoSQL由于无关系型,数据存储的结构简单;且NoSQL的Cache是记录级别的,因此性能要高很多。

(7)灵活的数据模型:NoSQL无需事先为要存储的数据建立字段,随时可以存储自定义的数据格式;而关系数据库,则基本不可能。

(8)高可用:NoSQL由于采用CAP原则设计,在不影响性能的情况下,可以实现高可用的架构。

目前普遍受到关注的基于大规模廉价计算平台的系统包括Google的云计算平台和Yahoo资助的开源项目Hadoop系统等。这两种系统采用了非常近似的Map/Reduce计算模式和大规模分布式非关系数据存储NoSQL机制(Google的Bigtable和Hadoop的HBase)。

本文的贡献在于:探索在混搭平台上,既利用NoSQL的高并发、高扩展、低成本的特性,又保持了传统数据库成熟的解决方案,从而展示了混搭平台对于海量数据存储及分析处理能力,以源自电信部门的大规模业务数据为分析对象,构建了一个具有良好参考价值的应用示范。

2 技术思路

随着电信行业的发展和用户规模的不断扩大,每天都产生着海量的业务数据、上网数据、信令数据、用户话单数据等。运营商普遍希望利用数据挖掘技术对这些数据进行分析处理,从而提供决策支持和为用户提供增值服务。然而由于数据量过于庞大,利用关系型数据库和复杂SQL语言对数据进行处理的传统方法将占用大量处理与存储资源,造成承载的服务器负载过高,执行效率低下,不得不提升服务器性能及存储规模,导致投资成本增加,已经越来越不可取。

“非关系型数据库”能够以两种基本的方式实现业务处理的灵活性。模式自由的逻辑数据模型有助于为任何业务进行调整带来更快的周转时间,把对现有应用和功能造成的影响减到最少,在大多数情况下因变更而带来的迁移工作几乎为零;水平伸缩性能够在用户增加造成负载周期性变化,或者应用突然变更的使用模式时,提供坚固的保障。面向水平伸缩型的架构也是迈向基于SLA构建的第一步,这样才能保证在应用不断变化的情形下业务处理保持连续。

分布式数据的核心问题是保证磁盘I/O不能成为应用性能的瓶颈,在此之上,绝大部分解决方案支持各种新一代并行计算的范式,例如MapReduce、排序列、Bloom Filter、B树、Memtable等。分布式计算模式将大型任务分成很多细粒度的子任务,这些子任务分布式地在多个计算节点上进行调度和计算,从而在云平台上获得对海量数据的处理能力,可以有效地解决电信行业海量数据挖掘处理中所存在的问题。

以关系型数据库存储和非关系型数据NoSQL存储为基础,结合云计算下的分布式计算理念,以下提出对电信数据的海量数据处理方法。

3 方案设计

结合关系数据库存储敏感数据及实时访问的优点,以及非关系数据库模式自由与低成本高性能高可扩展的优点,本文提出了关系数据库与非关系数据库NoSQL相结合的海量数据方案。系统架构如图1所示。

(1)数据整合层

通过封装关系数据存储与非关系数据存储的混合存储模型,化繁为简,用于实现数据访问与共享的隔离。

本系统的核心在于关系数据存储和非关系数据存储的有效结合。非关系型数据存储和关系数据存储主要包括如下技术实现方式:非关系存储作为镜像(可以采用代码同步模式或者同步模式)、关系与非关系数据存储的组合。鉴于电信行业数据的特点,本系统主要采用关系和非关系存储组合的方式进行实现。

非关系数据存储

电信数据由于其行业业务的特点,其数据结构非常复杂,数据与秒俱增。非关系数据库可存储非结构化和半结构化的数据,包括电信数据比较常用的图片、图像、音频、视频等信息,也包括办公文档、文本、XML、HTML、各类报表信息等等,同时对海量数据的存储与计算能力也可通过并行计算技术高效执行,因此非常适合存储电信海量数据。目前市场上的非关系数据库根据特定的应用场景,主要有三大类:第一种是满足极高读写性能需求的Key-Value数据库,产品主要代表

上一篇:Windows Phone 7 下一篇:基站天馈系统上行干扰排查解决方案