不让温数据直接变冷 广东移动携手华为寻找数据库扩容新解
扫描二维码
随时随地手机看文章
BOSS系统的存储容量限制一直是阻碍广东移动数据价值实践的天花板。温数据没地方存,只能定期迁到冷存储上了事。而GaussDB OLAP数据库的出现和华为工程团队的天才方案设计却用巧劲轻松捅穿了这层“钢筋水泥天花板”,在不浪费原有系统的情况下解决了扩容问题,让温数据不再直接变冷。而在这一过程中,广东移动IT团队也找到了新老数据库和关键业务高效共存的解决之道
数字化转型的核心就是要充分发掘数据的价值,而这对应着两条非常明确的实现路径。其中之一,是对数据的产生和变化进行即时响应,通过提高业务及数据实时性的方法来打造敏捷、灵活的数字化企业;而另一条路径则是发掘存量数据的价值,通过对海量数据的分析找出不断变化的趋势,为企业提供更高层次的洞察。
两条路径的启点虽然都是数据,但在启点之后的数据库应用中却会走上不同路径。前者对应了频繁的写操作,后者则对应了大量的读操作。而这也正是OLTP和OLAP的分水岭。所谓数字化转型,二者缺一不可。
作为企业数据库领域的新晋选手,GaussDB在今年初正式发布之后可谓赚足了眼球。凭借全自研和分布式的特性,GaussDB一经推出便受到了各方注意和争相报道。
当然,作为面向企业核心应用的数据库产品,推出和应用完全是两回事,更何况是在Oracle等产品已经占据市场相当久的情况下,要上马一款关乎核心应用的新数据库,企业和华为要考虑的事情还有很多。
广东是国内当之无愧的人口与经济第一大省,无论面对10万亿规模的GDP还是面对超过1亿的常住人口,通讯服务都是必须保障的基础服务。作为广东省运营商市场的绝对主力,2019年6月,广东移动服务的用户总数已超过1.4亿。海量的用户规模既意味着巨大的收入,也同时意味着巨大的数据挑战。
业务运营支持系统,简称BOSS系统,在运营商应用中负责记录用户的通话详单,是业务中基石的基石,是企业对用户收费和开展各类高级业务的依据,重要性不言而喻。面对行业监管的硬性规定,太快删除这些数据是不可能的;面对数字化转型的压力,想要把这些数据移出主数据库、归档到磁带等冷存储上也是不可取的。
但现实的情况却是,这套目前服务于1.4亿用户的BOSS系统每月都会产生30TB的增量数据。目前,BOSS系统的Oracle数据库中已经存储了150TB数据,而承担存储任务的EMC核心存储系统的容量上限为200TB……
如果以“数据即是财富”的角度来看,广东移动每月30TB的新增数据和海量的库存数据无疑是座巨大的金矿;但现时的难题却是负责存储这一数据库的EMC核心存储已经在容量上捉襟见肘,节点内的扩展能力早已完全枯竭。
一方面是不断积累的宝贵用户数据,另一方面则是接近极限的存储能力;这就相当于出海打渔却发现船舱太小,广东移动的心情可想而知。
放在过去,广东移动似乎除了将存不下的数据迁到冷存储上之外,只剩下换装核心存储系统这一条路可走了;但这仅剩的选择也同样意味着极高的成本和众多不可预知的风险。不过,随着数据库技术的进步,华为却为广州移动提出了全新的解决思路。
在不替换现有数据库和存储系统的前提下再接入一套分布式数据库,两套数据库均通过JDBC(Java Database Connectivity)与上层的BOSS系统及其他业务系统相连。这样,通过定期将Oracle主数据库在EMC核心存储中的数据迁移到分布式数据库上就能在不对核心数据库及存储进行大改的前提下实现对数据库的扩容。
从这一升级思路中,我们不难看出,其中的关键点在于承担扩展任务的分布式数据库不仅要具备能够满足未来数据需求的扩展能力,更要拥有足够的可靠性来承载业务核心数据。当然,最关键的是,数据要足够安全,迁移要又快又稳。
在这其中扮演关键角色的分布式数据库正是站在聚光灯下的华为GaussDB。
目前,GaussDB有两个版本,分别对应OLTP和OLAP应用。仔细判断广东移动对迁移数据的需求,我们不难发现,需要迁移的数据并非近几月产生的最新数据,而是数月之前的数据。这些数据已经不会再进行频繁的修改操作,反倒是对于总结业务在季度/半年/全年当中的变化趋势仍有不小帮助,查询需求大于修改需求。因此,GaussDB OLAP是最适合的选择。
作为一款分布式数据库,GaussDB OLAP由负责响应SQL任务的Coordinator Node(CN节点)和负责存储数据的Data Node(DN节点)共同组成,CN节点和DN节点均可自由扩展,理论上限达到2048个,以实现更好的访问性能和存储性能及容量。由此,相互解耦的CN与DN节点便相对轻松的实现了数据库与存储容量的横向扩展。这是解决Oracle+EMC组合缺乏扩展能力问题的关键。
同样是通过这种多个CN节点对多个DN节点的形式,GaussDB OLAP能够实现更好的并发查询、读取性能,为日后的大规模数据分析提供了很好的性能保障。
另一方面, GaussDB OLAP也通过集群内冗余的方式解决了数据库服务及数据存储的可靠性问题。在整套系统中每个CN节点均可访问全部DN节点,因此,只要还有一个CN节点在线,整个数据库就处于可用状态。另一方面,由于采用了DN节点中HDFS文件系统,数据也通过分布式和冗余的方式保障了整体的可靠性。
在项目实施过程中,华为为广东移动配置了由3个CN节点和12个DN节点的GaussDB OLAP集群,并通过GDS(Gauss Data Service)工具完成了第一期431GB数据的迁移。这431GB数据迁移共耗时502.6秒,传输速度达到了惊人的879.74MB/s。作为对比,广东移动在从一个Oracle数据库向另一个Oracle数据库导入数据时,速度从来没有超过10MB/s。
当然,不同品类数据库的数据迁移过程中不发生问题几乎是不可能的。在广东移动上马GaussDB OLAP的数据迁移过程中,虽然配套的GDS工具能够提供非常快的传输速录,但这一工具却无法完成对blob字段(大体积的非结构化字段)的迁移工作。
发生问题不可怕,找不到解决问题的人才可怕。在遇到问题之后,华为工程团队立即投入战斗。经过摸索,华为工程团队发现Oracle在针对医疗领域的解决方案中提供了一款专门针对大体积非结构化字段的数据迁移工具HDR(Oracle Healthcare Data Repository),利用这款工具,团队完美的解决了blob字段的迁移工作,项目得以顺利进行。
任何数据库的换装和迁移,核心目的都不是数据库本身,而是要为上层应用提供数据服务,广东移动的GaussDB项目同样如此。换装之后,广东移动的BOSS系统要对接两套数据库,这必然涉及到业务逻辑和操作代码的变更与转换。这个问题不解决,后期必然会伴随大量的业务人员重新培训成本。
为此,广东移动团队仔细梳理了整个BOSS系统的业务逻辑和每一个数据库接口,找到了新旧数据库在语法和接口上的数百个不同点,为GaussDB上线后的调整及修改确立了方向。而在修改之后,GaussDB也终于做到无论在接口还是语法层面都与原系统如出一辙,真正做到了业务层面对底层变化的无感。
可以说,除了GaussDB本身的众多先进特性之外,广东移动和华为团队的无间合作同样是项目成功实施的核心保障。
数据是企业数字化转型过程中的核心驱动力,是企业在数字时代的核心资产。与所有其他资产一样,数据本身也有着自己的生命周期,因此,让处在生命周期不同阶段的数据正确发挥自身的价值也就成了完成数字化转型的前提。
对于广东移动们来说,在上个时代构建的核心数据库及存储系统往往面临着性能够用但空间捉襟见肘的现实困境。这一困境使得企业不得不在一个两难局面之间进行选择:要么花费大量金钱并冒着巨大风险对原有存储系统进行升级或横向扩展;要么把那些还有分析价值的数据导出来,直接打入冷存储的广寒宫。前者是对业务的不负责,后者是对数据的不负责,都是数字化转型中的大“罪过”。
数据库扩容并不是新问题,市面上的解决方案也绝非GaussDB一种。而之所以广东移动要选择初出茅庐的华为GaussDB,一方面是源于GaussDB强大的扩展能力及新颖的方案;另一方面则是因为上层的BOSS系统本身就是华为软件团队的作品,把这个项目交给一群既懂应用又懂数据库的人,显然是更靠谱的选择。而在之后的方案选型及推进过程中,广东移动团队也与华为紧密协作,论证了方案的可行性并制定了详细规划,最终推动方案成型。
目前,广东移动正在就新数据库与业务系统的兼容性进行细致测试,确保业务在稳定可靠的前提下满足扩展性与性能的需求。
两个团队,一个初心;广东移动与GaussDB未来想必还会有更多关于数字化转型的精彩故事。
【IT葡萄皮】(公众号:itopics)由资深媒体人张垞运营。从业十二年的深度观察,只为一篇不吐不快的科技评论。
联系方式
电话:18612920630
电子邮件:69240891@163.com
微信:z87136954
QQ:87136954
免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!