MPP数据库在中国移动大数据应用中的前景分析
田雯;刘倩;孙红恩
【摘 要】随着云计算、大数据应用的迅猛发展,中国移动IT系统的数据量呈现爆炸式的增长,而传统的以小型机架构为主的数据库系统在存储和分析能力等方面开始出现瓶颈,且造价高昂,因此中国移动对MPP数据库的应用需求量大幅增加.本文通过对MPP数据库在中国移动的现网使用情况、产品技术优劣及适用场景的分析,来探讨MPP数据库在中国移动大数据应用中的发展前景.
【期刊名称】《电信工程技术与标准化》
【年(卷),期】2017(030)003
【总页数】5页(P87-91)
【关键词】大数据技术;MPP数据库;share-nothing架构应用
【作 者】田雯;刘倩;孙红恩
【作者单位】中国移动通信集团设计院有限公司,北京 100080;中国移动通信集团设计院有限公司,北京 100080;中国移动通信集团设计院有限公司,北京 100080
【正文语种】常见mpp数据库中 文
【中图分类】TN929.5
由阿里巴巴造出的“去IOE”概念在IT圈已经迅速火热起来,中国移动也跟随浪潮掀起了“去IOE”的运动。“去IOE”即去掉造价高昂的IBM小型机、Oracle数据库和EMC存储设备,代之以廉价的国产化、开源化的软硬件系统,实质就是以“分布式+开源”的架构替换传统的“集中式+封闭”架构,是系统云化的重要组成部分。而实现“去IOE”之路,就必须要借助云计算、大数据等新型技术。
研究机构Gartner对于“大数据”(Big Data)给出的定义是“需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产”。大数据具有大量(Volume)、高速(Velocity)、多样(Variety)和价值(Value)四大特点,简称“4V”特征。而大数据技术则是对大容量、高周转率、高可变性的信息资产的管理,它要求经济实惠的、创新的信息处理形式以提升洞察力和决策水平。
目前主流的大数据技术主要包括分布式数据库(Massively Parallel Processing大规模并行处理, MPP数据库)、Hadoop平台、NoSQL和NewSQL技术等。
各种大数据技术擅长领域不同,如表1所示,用户需要根据实际的应用场景选取最优匹配的大数据技术。
3.1 MPP数据库在中国移动现网的应用情况
随着移动互联网应用的迅猛发展,中国移动IT系统的数据量呈现爆炸式的增长,带来了海量的数据存储、分析和管理需求。而传统的以小型机架构为主的数据库系统,在存储、计算、查询和分析能力等方面均开始出现瓶颈,且造价高昂,因此中国移动对MPP数据库的应用需求量大幅增加。
2015年最新调研结果显示,中国移动各省约有40个IT系统使用了MPP数据库,总数据量约为8PB。其中,47%用于数据共享平台(多数为企业级或部门级内部共享使用),22%用于经分系统,12%用于详单云,7%用于集中性能管理系统,其余用于深度分析库、信令监测系统、VGOP等系统。
从规模统计情况来看,中国移动MPP现网应用规模主要集中在10~50个节点、50~500 TB数据量之间。同时各省根据系统满足期、使用用户、业务发展等情况对各系统终期将实现的规模进行预测,预测结果显示MPP远期业务发展将可达到100节点、1 000 TB数据量的规模。图1、2为中国移动MPP现网应用规模和远期预测规模分布图。
3.2 MPP数据库适用场景分析
根据上述应用情况可以看出,MPP数据库主要适用于具有以下特性的OLAP类应用(数据仓库/集市、数据分析类系统等):
离线批处理、复杂逻辑的关联分析;
自定义查询、自助取数;
支持结构化数据、少量的非结构化数据;
单集一般100节点以下;
数据规模在TB~PB级。
MPP数据库针对OLAP类应用场景提供了大量的技术优化,以充分发挥Share-Nothing架构的性能优势和关系数据库的数据关联分析能力。相较于传统的关系型数据库产品,MPP数据库具有高性能处理能力和高数据吞吐能力,适合较大数据量、高计算负载度、低延时要求的关系型数据处理,可提供结构化数据的深度分析挖掘以及多变的自助分析功能:
(1)深度分析与挖掘:承担部分主库结构化数据处理任务,执行大量历史信息处理和查询任务,完成海量数据挖掘任务;
(2)即席查询与自助分析:执行非固定信息的分析任务,以及临时、即席、快速变化的分析任务,提供更加开放的分析探索环境。
4.1 MPP技术特点及产品介绍
MPP数据库依然是关系型数据库。典型的MPP系统是通过Share-Nothing(无共享)的方式实现大规模的并行处理,它将任务并行的分散到多个节点上,每个节点都有独立的磁盘存储系统和内存系统,业务数据根据数据库模型和应用特点划分到各个节点上,每台数据节点通过网络互相连接,彼此协同计算,作为整体提供数据库服务。其中,MPP又分为有
Master节点和无Master节点两种架构,Master节点承担生产执行计划和任务调度等功能,有专职Master节点的架构不会影响数据节点的效率,但缺陷在于Master节点本身可能会成为性能瓶颈。
MPP数据库与传统的Share-Disk架构的SMP数据库不同,SMP系统的节点之间共享文件存储,特点是高并发、高可用性、数据量较小,适合OLTP类应用场景,而MPP系统具有海量数据、低并发、低可用性的特点,因此更适合于OLAP类应用场景。图3为MPP数据库系统和SMP数据库系统的架构图。
目前市面上的开源和商用MPP数据库产品多达几十种,而且还有新的产品不断涌出。各种不同架构和特性的MPP数据库产品纷纷加入市场大混战,技术路线很难标准统一化,给用户带来了选型和管理上的困扰。表2为目前市面上主流MPP数据库产品的技术优劣对比情况。
MPP数据库各产品技术存在着较大的差异,产品选型应重点考虑系统的集规模、部署环境、执行效率和安全性等需求。综合来讲,Greenplum(EMC)、Vertica(HP)和Gbase(南大通用)这三种产品的技术更为成熟优良。其中,南大通用作为国产MPP领域的第一
品牌,技术发展水平与国外同类产品相当,甚至在架构设计方面已赶超国外同类产品。
无论选择何种产品,用户在进行产品选型之前,都应先明确具体的应用场景,并针对应用场景对产品进行功能和性能测试,重点比对产品的各项指标数据,从而选择性价比最高的一款产品。
4.2 MPP技术缺陷及改进
MPP架构可以对大数据进行分析处理,可有效支撑PB级别的结构化数据,这是传统数据库架构无法达到的数据量,但MPP也具有一些局限性和技术缺陷:
MPP系统因为要在不同处理单元之间传送信息,针对紧耦合的数据库表访问、较多事务同时处理的情况效率不佳,因此不适用于事务型数据及OLTP场景。
MPP系统的扩展能力有限,目前的技术理论上可实现512节点的互联,但实际上系统处理性能不能随着节
点数的增加呈线性增长趋势,现网中100节点以上规模的应用数量极少。
MPP系统的故障容忍度不高,单节点故障性能损失可高达50%,多节点故障则可能导致整个MPP系统不可用。
各大主流厂商为解决上述问题,对MPP技术做了优化和改进,现今已有多Master节点、行列混合存储、植入内存计算等技术开始尝试使用:
(1)Master节点主要承担访问入口、元数据管理、生成执行计划和任务调度等功能。有专职Master节点的架构不会影响数据节点的效率,但大规模集下Master节点本身会成为性能短板;而无专职Master节点的架构扩展性能更好,一个节点失效不影响数据库整体状态,但任务调度等主节点工作分布在数据节点执行会降低数据节点的性能。因此, 多Master节点是未来的发展方向,由多个子集组成联邦集: Master集、独立的集服务集(比如Zookeeper)和计算集组,可有效解决大规模集部署的问题。这样多节点的分层架构提供良好的扩展性和高可用的同时,也能够保证数据节点的对等性。
(2)按行进行Hash分布是MPP的主要特征,行式存储更新速度快,适合多字段频繁查询;而列式存储则能大幅降低分析负载的磁盘I/O,并且提供更高的数据压缩率。行列混合式存储可吸收两者的优势,互补加成,可以按照应用类型,随需定制分区存储方式,以达
到最优化的访问性能,从而提高查询速度和数据压缩率。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论