【恩墨學院】資料架構:中國電信的Oracle Sharding架構應用案例分析

恩墨學院發表於2018-03-26


蓋國強

Oracle 自 12.2 版本推出了 Sharding 的分散式架構,透過對於分割槽表的特性延展將原來的集中式架構分散開來,這一特性推出之後,引起了很多行業客戶的關注


Oracle Sharding 可以被看做是一個 Shared-Nothing 架構的彈性關係型資料庫,最多可以水平擴充套件到 1000 個獨立的Oracle資料庫分片,每個分片儲存全域性表的區域性資料,依託原有的分割槽技術,實現資料的拆分。


OCM 培訓課程


有了分片,自然要有路由機制,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的威力正在逐步展現,是時候了,研究起來。



恩墨學院隸屬於雲和恩墨(北京)資訊科技有限公司,致力於提供專業高水準的與大資料培訓服務,挖掘培養大資料與資料庫人才。恩墨學院提供包括個人實戰技能培訓、個人認證培訓、企業內訓在內的全方位大資料和資料庫技術培訓。ACE級別超強師資,配備專業實驗室,沉浸式學習與訓練,專業實驗室、配備專業助教指導訓練。能迅速融入專家圈子,業內資源豐富,迅速積累職場人脈。課程包括:班、Oracle 、Oracle OCP考試等。



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28530558/viewspace-2152226/,如需轉載,請註明出處,否則將追究法律責任。

相關文章