用 Gravity 打造高效的跨雲資料處理架構

懶人專用的跨雲資料管理和遷移機制

Photo by 贝莉儿 DANIST on Unsplash

在同個內部網路環境進行各種資料庫查詢工作、資料處理工作,不是什麼太難的事,即使跨資料庫系統進行關聯、聚合工作,只要資料處理流程和策略得當,或是能忍受稍微差一點的處理效率,也不是太困難的問題。如果問題不複雜,數量也不多,就算捲起袖子土炮,最多也是多花點時間寫寫程式就能解決。

但當雲端或是數位轉型的時代來臨,跨組織、網路、地區和雲端平台的各類資料處理工作,就不是能輕易解決的問題。多數情況下,我們不能因為其中應用的需要,而隨意去造成另外一個資料庫系統的壓力,也不能讓自家網路頻寬遭受太大的壓力,更要保證一定的資料處理效率及穩定性。為了應用的需求,甚至也不能放棄大量併發查詢的效率。

由於這已經不是自己寫寫簡單的爬資料程式就能輕易解決,涉及的議題也相當多,於是我們的客戶某次天外飛來一筆,發現並使用 Gravity 內建的資料節點連結機制打造「資料中繼節點」,實現了跨雲的資料傳輸機制。讓所有已經經過 Gravity 處理的資料,可以快速轉移到另一個節點進行各類處理,使資料無痛暢行在不同的雲端平台之中。

打造即時的跨雲資料聚合和快取機制

利用 Gravity 實現資料中既機制,讓資料輕巧跨雲後繼續實現快取機制

在舊文「以 Gravity 快速實現跨資料庫的關聯查詢」中提及,我們可以使用 Gravity 輕易的進行跨資料庫聚合,然後寫入到快取資料庫。但是,若想要將聚合的資料寫到另一個雲端平台的資料庫,日後快取資料還原、擴展副本將都會是很大的問題,因為任何動作都需要跨雲回源頭拉取資料而效能不佳。

因此,建立一組 Gravity 在目標雲端平台上成為資料中繼,使其跟上游的 Gravity 資料節點訂閱並接收資料後,再繼續進行後續工作處理。這樣做法,可以讓目標的資料庫,跟同一個雲上的 Gravity 資料節點「就近」拿取資料,如此便可以有效率的進行各種資料的同步或抄寫。

如同從資料庫接收資料,Gravity 的資料中繼會監聽上游 Gravity 資料節點的資料變更事件,等上游資料變更就會立即進行資料更新,使資料近乎即時同步。

跨雲實現複寫機制以打造多副本快取

輕易在跨雲場景實現多個資料副本

當我們想跨雲建立多個副本的快取,以滿足應用程式大量併發查詢的需求,這時運用「資料中繼」機制可以更有效率完成。由於所有快取副本的建立,可以從同一個雲上的資料節點中取得資料後進行還原,因此無論建立的複本數量再多,都因為能避免跨雲的資料操作和傳輸,而有很好的效率。

資料中繼是利用 Gravity 的資料節點連結功能來實現,將上一個 Gravity 的資料狀態同步至另一個節點。實際上就是把前一個 Gravity 資料節點視為資料源,進行標準的資料快取、複寫、過濾等工作,如同從一個資料庫系統取得資料一樣。

註:若不清楚 Gravity 可以對收到的資料做哪些工作,可以參考舊文「以 Gravity 無痛提高資料庫的併發查詢能力」。

實現跨雲、跨異質資料庫的資料遷移

Gravity 支援多種資料庫,同時寫入多個異質資料庫不是問題

善用 Gravity 的多樣化資料庫系統支援,可以將資料同時寫入到不同類型的異質資料庫中,這意味著利用這個功能,搭配前述的跨雲機制,就可以輕易實現跨雲的資料遷移(Data Migration)工作。

滿足更多重跨雲的關聯聚合工作

可以做多重資料聚合,哪怕資料是在其他雲上

利用資料中繼的機制,更複雜的跨雲場景以及更多重的關聯聚合工作,都可以實現。同樣的,資料節點之間的資料同步行為,只需要傳送資料一次,即可遷移到另一個雲端平台上進行使用,大量減少跨雲的網路傳輸問題。

此外,如果有更多詭異的需求想完成,串接更多資料節點實現更細緻的資料調度,也並不是不可能的事。

如果你已經了解 Gravity 的資料快照機制,就知道當資料源離線時,任何的資料副本還原、快取節點擴展仍然可以不受影響正常運作。因此在跨雲場景下,資料中繼節點在跟上游失聯或斷線時,也同樣可以正常運作。

實現數據網格來管理眾多資料節點

當資料節點越來越多,數據網格就需要被實現

從最小的資料庫需求出發,運用 Gravity 處理不同的資料庫系統問題,一直到跨服務、跨系統、跨雲,以致最終將會有無數資料節點分佈在各個系統或不同的雲端平台之上,甚至會有節點之間資料的訂閱、權限控管、稽核和資料治理問題,以及自動化佈署和跨組織資料介接等管理議題。

此時就需要實現數據網格(Data Mesh),來管控所有的資料閘道狀態和資料存取規範,甚至能依據應用需求,快速的生成新的資料節點機制,實現真正有意義的「數據中台」。

在複雜的組織中,各單位有自己負責的資料,在微服務架構下的私有資料庫(Database per service)更是如此,因此資料的負責單位需要控管資料的進出,以及資料能被誰所訂閱。若是要與第三方單位串接,更是要嚴加控管。這也是為什麼資料網格(Data Mesh)在今天如此重要,廣泛被業界所討論。

導入 Gravity 的其他好處?

想要讓資料抄寫到不同類型的資料庫嗎?想快速做更多的副本、更彈性的建立查詢快取嗎?想保護既有資料庫系統不要被壓垮嗎?欲知更多 Brobridge Gravity 的好處和功能,歡迎與我們寬橋(Brobridge)聯絡。

--

--