聊聊Oracle的分散式資料庫技術
Oracle 是集中式資料庫的典型代表,其RAC技術獨步天下,至今無人能較好地模仿,因此在分散式資料庫上發力較晚,也不大有名氣。2010年之後,因為網際網路企業的巨大成功,分散式資料庫技術逐步興起,再加上傳統儲存在效能上瓶頸較大,NVME SSD等儲存技術的出現,SHARE NOTHING架構的分散式資料庫的勢頭一時無兩。Oracle在這個大潮中也有點坐不住了,於是在12c中推出了sharding database技術。
我剛開始以為Oracle的分散式資料庫技術是用來在OLTP資料庫中提高OLAP能力的,因為Oracle雖然很早就推出了OLAP資料庫,不過受到RAC在橫向擴充套件方面的限制,一直不溫不火。在2015年的CAB的ASK ANDY環節中,我從ANDY的回答中得到了一個令我意外的回答,Oracle的sharding資料庫技術是為OLTP場景,特別是物聯網場景提供的,而並不是用來解決OLAP的問題的。當時的Oracle Sharding確實十分雞肋,架構上也不完善,sharding節點的高可用還要依賴於手工部署的ADG,外加沒有找到適合的場景,因此很快就被我忘卻了。
後來我為使用者設計Oracle資料庫一體機的時候,為了讓NVME SSD發揮出更大的作用,我嘗試了在一個四節點RAC上用跨例項並行查詢去掃描大表,意外的發現只要儲存效能OK,CPU資源充足,Oracle的跨例項並行查詢不比那些分散式資料庫差,甚至在一些複雜查詢方面,因為Oracle優秀的最佳化器,反而會有很大的優勢。於是使用Oracle分散式資料庫的意願又弱了不少。
這些年Oracle的sharding資料庫在不溫不火的發展著,每次新版本釋出的時候,都會帶上一嘴,不過並不會作為熱點去推薦。直到Oracle 23C,這個情況突然變了。23c剛剛預釋出的時候,就有朋友和我說Oracle 23c支援RAFT複製組了,你知道不知道。我去網上一看,還真是那麼回事。Oracle sharding資料庫支援Raft的意義是非凡的,這說明Oracle終於往真正的分散式資料庫走了一大步,而不僅僅限於Sharding這種入門級分散式場景了。難道是Oracle居然開始發力於分散式資料庫,準備用分散式和RAC兩種架構來左右互搏了?
不過經過我的仔細分析後發現,Oracle的策略恐怕還不是如此的。首先從名字上,Oracle 23c推出了一個十分奇怪的名稱,全球分散式資料庫。我剛開始看到Global的時候,還錯解為全域性,經過O記的人確認後,發現是全球分散式資料庫。
何謂全球分散式資料庫?Oracle 23c 的全球分散式資料庫是一種能夠在多個地理位置存儲存和處理資料的資料庫系統,它支援跨分片、跨叢集、跨雲的資料管理和查詢。全球分散式資料庫的主要應用場景是跨地域,甚至跨國家的全域性分散式資料庫場景。
這種全球分散式資料庫並不是為了解決在某個可用域或者機房內處理能力橫向擴充套件的多節點協同處理,而是更加註重跨資料中心的全域性分散式資料庫應用場景。這也很好理解,Oracle認為資料庫橫向擴充套件並不是全球分散式資料庫關注的場景,這個場景RAC已經能夠給出很好的答案了。全球分散式資料庫可以在不同地域或雲環境中部署多個資料庫例項,並保證資料的一致性和可用性的場景,例如,網際網路金融、電商、遊戲等行業,大規模社交網路、物聯網、人工智慧等領域是Oracle 全球分散式資料庫的十分有用的應用場景。
我懷疑是Oracle推出全球分散式資料庫的最重要的原因, 那就是在資料技術時代,用來並滿足各種安全、合規的場景需求。比如目前各國都對跨國企業提出了資料本地化儲存的需求。這讓跨國企業的資訊系統建設十分頭痛。印度、中國、歐洲等都要求使用者資料只能儲存在本國,不能隨意在境外儲存。那麼Oracle 23c的全球分散式資料庫就可以大顯身手了,在中國,印度,歐洲,美國分別設定一個分割槽就可以了。本國使用者資料都只儲存在本國,需要全域性訪問時,依然可以很方便地查詢與拉取。並且利用TrueCache技術,他國的資料可以在本地的記憶體資料庫例項中快取,從而獲得極高的訪問效率。而且TrueCache例項本身又不帶有持久化儲存,這一特性又滿足了國別監管本國資料不能在境外持久儲存的政策。
我在和某個國產資料庫廠商的朋友討論到Oracle全球分散式資料庫的時候,他感嘆到,這才是真正的把使用者需求吃透了才能做得出的產品。
來自 “ 白鱔的洞穴 ”, 原文作者:白鱔;原文連結:https://mp.weixin.qq.com/s/M9vFiEupkovwxeZaF5na7Q,如有侵權,請聯絡管理員刪除。
相關文章
- 分散式資料庫技術論壇分散式資料庫
- 聊聊分散式 SQL 資料庫Doris(七)分散式SQL資料庫
- 聊聊分散式 SQL 資料庫Doris(六)分散式SQL資料庫
- 聊聊分散式 SQL 資料庫Doris(八)分散式SQL資料庫
- 聊聊分散式 SQL 資料庫Doris(四)分散式SQL資料庫
- 聊聊分散式 SQL 資料庫Doris(三)分散式SQL資料庫
- 華為CloudNative分散式資料庫技術解析Cloud分散式資料庫
- 分散式資料庫技術論壇回顧分散式資料庫
- 崑崙分散式資料庫技術特點分散式資料庫
- 崑崙分散式資料庫技術優勢分散式資料庫
- 阿里分散式資料庫未來技術之路阿里分散式資料庫
- 真正硬核分散式資料庫:開發分散式SQL資料庫的6種技術挑戰 - YugaByte分散式資料庫SQL
- 分散式系統技術:儲存之資料庫分散式資料庫
- 分散式資料庫技術的演進和發展方向分散式資料庫
- 分散式 SQL 資料庫與表格最佳化技術分散式SQL資料庫
- 分散式資料庫技術之路未來如何發展?分散式資料庫
- 開源分散式資料庫RadonDB的核心技術與實現分散式資料庫
- Hadoop技術(四)分散式、面向列的開源資料庫HBaseHadoop分散式資料庫
- 聊聊分散式資料庫中單節點故障的影響分散式資料庫
- 強!分庫分表與分散式資料庫技術選項分析分散式資料庫
- 騰訊分散式資料庫TDSQL榮獲技術卓越獎分散式資料庫SQL
- 「分散式技術專題」資料庫常見的JOIN演算法分散式資料庫演算法
- CNCC技術論壇|分散式資料庫HTAP的探索與實踐分散式資料庫
- 陽振坤:分散式技術引領關聯式資料庫發展分散式資料庫
- 為資料賦能:騰訊TDSQL分散式金融級資料庫前沿技術SQL分散式資料庫
- 分散式資料庫分散式資料庫
- 分散式資料庫企業級功能技術解密與最佳實踐分散式資料庫解密
- 從Google Spanner漫談分散式儲存與資料庫技術XAGo分散式資料庫
- DTCC 回顧:技術破局,分散式資料庫創贏未來分散式資料庫
- Oracle閃回技術 為Oracle閃回配置資料庫Oracle資料庫
- 分散式資料庫 ZNBase 的分散式計劃生成分散式資料庫
- 「分散式技術專題」資料分佈(原理、資料分片)分散式
- Oracle、NoSQL和NewSQL 資料庫技術對比OracleSQL資料庫
- 開源了!RadonDB分散式資料庫核心技術與實現詳解分散式資料庫
- 十問分散式資料庫:技術趨勢、選型及標準思考分散式資料庫
- 「分散式技術專題」資料切分與合併分散式
- 【技術乾貨】Oracle資料庫漏洞掃描指南Oracle資料庫
- Oracle、NoSQL和NewSQL 資料庫技術對比(一)OracleSQL資料庫