0

数据架构:中国电信的Oracle Sharding架构应用案例分析

盖国强 2017-10-29
207

Oracle 自 12.2 版本推出了 Sharding 的分布式架构,通过对于分区表的特性延展将原来的集中式架构分散开来,这一特性推出之后,引起了很多行业客户的关注(福利:本文引用的PPT,可以关注微信,回复 2017OOW 找到 )。


Oracle Sharding 可以被看做是一个 Shared-Nothing 架构的弹性关系型数据库,最多可以水平扩展到 1000 个独立的Oracle数据库分片,每个分片存储全局表的局部数据,依托原有的分区技术,实现数据的拆分。



有了分片,自然要有路由机制,Oracle 通过 Shard Directors 和 Shard Catalog 实现这一目标,应用访问最佳方式是通过使用分区键来进行数据分片的导航。



参考阅读:

Oracle 12.2新特性掌上手册 Sharding 的增强

从原理到实践 Oracle 12.2 Sharding技术揭秘

关于Oracle Sharding,你想知道的都在这里


中国电信是中国国内最早实践的用户之一。在 2017 Oracle OpenWorld大会上,中国电信分享了他们的应用情况,题目是:Oracle Sharding ofr China Telecom's WeChat IoT Application,从名字看,这是中国电信基于Wechat - 微信的服务体系应用系统



截至2016年,中国电信在网用户约2.15亿,其实践案例微信服务平台是 BSS 域的一部分,实现了基于 WeChat 的客户服务系统。



Q:为什么采用Oracle Sharding作为解决方案?中国电信做了解答。

A:因为这个项目要服务于大量的 NB-IoT(Narrow Band Internet of Things,窄带蜂窝物联网)网络用户。

A:在评估了 Oracle Sharding,MySQL、MongoDB 和 MariaDB 之后,选择了Oracle数据库的解决方案,因为更换数据库的迁移成本太高(too high),DBA 和 开发人员 更熟悉 Oracle 数据库。



在经过参考同行、测试验证之后,2017年6月29日,这个系统正式上线,上线之后运行稳定。



整个系统的架构图如下,目前使用了 4 套 Oracle RAC,构成了具有四个分片 - Shard 的 Oracle 分布式架构。图中未提交备库和容灾设计,一般来说,还应该有 Data Guard 存在于这个架构之中。



未来,中国电信将依托这个平台,继续整合其他应用,比如 10000 号客户服务系统。



另外一个Oracle Sharding的典型客户是 Dyn ,领先的DNS和Email服务提供商,他们通常要在90天内面对 2 万亿次的查询,产生 1.6 TB/天 的数据量,3个月的数据增幅超过 144 TB。



Dyn 的Sharding 部署方案跨越了两个数据中心,其间通过Data Guard技术进行同步:


看起来Oracle Sharding的威力正在逐步展现,是时候了,研究起来。



想了解更多未来数据及数据库领域的发展方向和最新技术?快报名参加11.17 ~ 11.18在北京举行的『数据技术嘉年华』,限时免费报名中



时间:2017年11月17日-18日(周五 & 周六)

地址:北京丽都皇冠假日酒店(北京市朝阳区将台路6号)


识别下方二维码购票参会










知己知彼,创新求变,才不至于被淘汰!

愿我们都在奋斗的路上,与时代一起成长。



最后修改时间:2020-05-07 23:55:29
「喜欢文章,快来给作者赞赏墨值吧」
文章转载自盖国强,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论