大数据 频道

分布式存储时代,横空出世的OceanBase

  【IT168 评论】数据,被誉为新时代的石油。几乎任何一个企业的IT管理者,都会在演讲、采访或其他形式的交流分享中强调数据的重要性。获取洞察、行为预测、市场分析、业务转型升级……数据能够为企业带来巨大的商业价值。

  但与此同时,数据量的激增,也让数据存储及管理成为了更为棘手的问题。传统存储系统已经难以满足大规模IT应用对数据存储的要求,采用分布式的系统架构,利用多台存储服务器同时对数据进行存储的分布式存储系统应运而生。凭借更高可靠性、可用性、可扩展性和存取效率的优势,它逐渐成为大规模数据存储的主要方式。

  在2019中国系统架构师大会即将召开之际,笔者有幸就这一话题采访到了蚂蚁金服高级技术专家赵裕众(花名陈群)。2010年,陈群于中国科学技术大学获得计算机博士学位,同年加入蚂蚁金服从事分布式事务框架的研发,2013年加入 OceanBase 团队,目前在 OceanBase 团队负责存储相关的开发工作。在SACC2019期间,陈群将进行《OceanBase 存储系统的架构演进历程及工程实践》主题演讲。

蚂蚁金服高级技术专家赵裕众(花名陈群)

  未来,分布式存储将替代传统存储

  经过几年的发展,分布式数据存储技术进步迅速,已经在许多业务场景中表现出了巨大的生产使用价值。有观点认为,分布式的数据存储方式未来将完全取代传统存储。这种说法也许有些激进,但陈群认为,分布式存储代替传统存储会是一个趋势。他表示,随着5G、物联网(IoT)等技术和其应用场景的铺开,未来数据量会越来越大。这会为分布式存储带来机遇,同时也会有新的挑战。

  数据石油的井喷,是带来更多挑战的主要原因。对于分布式存储的未来发展挑战,陈群表示:“随着未来数据量的增大,对分布式存储的高性能低成本会有更高的要求,集群的规模可能会变得更大,更大规模集群下的线性扩展仍然会是个挑战。此外随着业务场景的增多,一些业务对数据一致性及高可用也会有更高的要求。”

  那么企业IT部门在搭建分布式存储系统时,需要重点关注的设计与建设要点有哪些呢?

  首先是数据的安全性,或一致性。设备故障、自然灾害、人为失误包括恶意入侵等因素都可能为系统带来灾害,导致数据丢失。IT部门在建设分布式存储系统时,需要考虑在一台机器宕机、一个机房甚至一个城市遇到灾难的情况下,如何保证数据不会丢失?

  然后是扩展性。基于业务的规划与发展态势,在数据量达到一定程度时,往往需要对系统进行扩展。一般的分布式存储系统都可以轻松扩展到几十台服务器,但在更大规模之下,如果需要扩展到成百上千台,系统需要能够具备相应的扩展能力。

  此外要保证高可用。业务难以忍受长时间的宕机,恢复时间越长往往意味着损失越大。IT部门应考虑当系统出现故障时,如何在最短的时间内将其恢复,将损失最小化。

  最后是性能成本和易用性。出于整体系统建设规划的考虑,这两点也十分重要。“其实这两点都对应着成本,一个是机器成本,一个是人力成本。” 陈群说。

  金融级分布式关系数据库——OceanBase

  熟悉中国互联网的人,一定知道阿里巴巴的“去IOE”之旅——即摆脱过去IT系统中对IBM小型机、Oracle数据库以及EMC存储的过度依赖;而熟悉“去IOE”的,一定也知道阿里巴巴和蚂蚁金服完全自主研发的分布式关系数据库——OceanBase。

点击图片,了解关于OceanBase的更多详情

  2013年7月,淘宝广告系统使用的Oracle数据库下线,也是整个淘宝最后一个Oracle数据库。2014年,OceanBase替换了支付宝交易系统中的Oracle数据库。2015年: OceanBase成功上线网商银行,成为全球首个应用在金融核心业务系统的分布式关系数据库。2016年,OceanBase替换了支付宝最核心的账务系统中的Oracle数据库。2017年: 支付宝首次把账务库在内的所有核心数据链路搬到OceanBase上,并在双十一种创造了4200万次/秒数据库处理峰值的全新纪录。

  作为阿里去IOE战略中的重要组成部分,OceanBase自然代表着业界的最高水平。据陈群介绍,OceanBase的分布式架构使得它能够承载阿里巴巴和蚂蚁金服的海量数据,2018年双11当天淘宝2135亿元交易的背后就有OceanBase数据库的支撑。

  同时它的高可用强一致也确保了支付宝不会再有光纤被挖断导致停服务的事情发生。2018年云栖大会上,蚂蚁金服副CTO胡喜(花名:阿玺)当场演示了剪断光纤,在OceanBase数据库及上层中间件的支撑下,30秒内服务就得到了恢复,同时数据也没有一行出现丢失。

  据陈群介绍,OceanBase的核心优势包括以下五点:

  1、线性扩展:传统单机数据库因受单机能力限制,所以扩展性有很大影响。OceanBase基于share nothing架构,并提供了灵活的分区功能,可以通过动态添加机器以获得水平扩展能力。

  2、高可用:传统企业在解决高可用问题上更依赖高端硬件,但高端硬件也不能解决机房级故障乃至城市级故障下的高可用问题。OceanBase在分布式架构下使用Paxos协议,保障业务在单机故障、机房级故障、城市级故障下都可以持续可用。

  3、强一致:OceanBase提供完整的ACID事务语义,并通过Paxos分布式协议确保分布式环境下单机故障时的数据强一致。

  4、高性价比:随着双十一交易量的超线性增长,数据库性能最终体现在逐年提高的吞吐量上,OceanBase通过使用廉价的PC机,极大的降低了系统的硬件成本,并通过对单机性能的极致优化,在保证高性能的同时有效的降低了整个系统的运行成本。

  5、易用性:OceanBase支持SQL,并提供MySQL和Oracle两种不同的租户模式,在语法上和MySQL与Oracle完全兼容,用户的学习成本与迁移成本几乎为0。

  未来的升级路线

  随着技术的发展和应用创新的加速,IT环境愈发多样化,数据库作为承载数据的基石,其功能特性也应顺应时代趋势而不断进步,固步自封、止步不前是万万不可取的。谈及OceanBase的升级路线时,陈群表示,团队计划从两个主要方面展开工作。

  第一是功能方面,目前OceanBase提供了MySQL和Oracle两种不同的租户模式,在语法上和MySQL与Oracle完全兼容,也能够支持MySQL和Oracle大多数的主流功能。当然数据库是一个比较复杂的系统,要做到100%完全兼容并不是一件简单的事情,未来OceanBase会在Oracle兼容性方面做进一步完善。

  第二是性能方面,目前OceanBase主要应用于OLTP场景,在高并发事务方面扛住了双11的压力,取得了一定的成绩;但同时在OLAP场景下,OceanBase的分布式架构会成为我们天然的优势,后续OceanBase也会在OLAP场景发力,在同一套引擎支持混合OLTP和OLAP的HTAP业务。

  OceanBase的使命感

  金融行业的独特性,使其应用场景对数据强一致和高可用要求非常之高,特别是在涉及用户资产的相关业务上,任何一个数据丢失或业务下线造成的损失可能都是难以承受的。OceanBase所提供的各项能力在支付宝的海量业务场景中久经验证,在生产系统中的长期磨练下,其架构在实践中不断地演进与升级,完全能够高标准地满足金融级场景需求。目前,OceanBase已经支持了阿里巴巴/蚂蚁金服数百个关键业务的运行。

  对于阿里巴巴和蚂蚁金服而言,OceanBase的价值与意义自然是非凡的。而除此之外,从某种程度上来说,OceanBase对整个中国数据库行业来说也具有划时代意义。OceanBase是中国数据库技术的最高水准的一大代表,它的出现打破了寡头独占市场的格局,如今更能够站在世界舞台上,比肩一众科技巨头。

  陈群表示:“我觉得OceanBase承担着更重要的使命,在大数据时代中,数据是一切上层应用的基石,海量数据下的存储和查询对数据库系统提出了前所未有的挑战,OceanBase团队是直面这一挑战的一群人,我们希望OceanBase可以成为大数据时代的一项基础设施。”

  最后,作为SACC大会的参与者,陈群也表达了对SACC的高度认可与美好祝愿,同时表示很荣幸能够在SACC2019期间进行主题分享。他认为,作为国内重要的技术大会,无论是对分布式存储、云计算、大数据还是人工智能、微服务,SACC始终保持着对前沿技术的敏锐关注与热切讨论。“和其他参与者一样,我也从大会中得到了很多收获,有了许多成长,在此预祝大会圆满成功。”陈群说道。

  关注SACC2019大会的最新消息,请点击:http://sacc.it168.com/

0
相关文章