技術架構說明

GRAVITY 是資料庫與資料庫之間溝通的中介層,讓資料庫的資料藉由中介資料節點,可以分流、遷移、複製、快取於不同的系統之中。為了連接和適應各種不同的資料庫系統、應用系統,GRAVITY 被設計得相當輕量,而且具有許多彈性,方便資料管理者、開發人員可以自由部署和設計自己所需的資料系統架構。

GRAVITY 整體架構

設計上,GRAVITY 主要工作是為資料源建立資料代理節點,然後從資料源接收資料,進行事件保存、分區、快照等工作。讓有需要的應用系統,可以跟資料節點訂閱資料,並將資料落地於指定的資料庫系統、訊息佇列或推送至另一個應用系統。

Gravity 整體架構

GRAVITY 主要由三大元件所組成:

  1. 資料源適配器:Adapter
  2. 資料節點同步器:Synchronizer
  3. 資料傳輸器:Transmitter

資料源適配器:Adapter

資料源適配器(Adapter)用於從資料源(Data Source)收集資料,並將資料送入資料節點同步器。

資料節點同步器:Synchronizer

資料節點同步器(Synchronizer)會將資料分類保存,並即時生成資料快照(Snapshot)。

資料傳輸器:Transmitter

資料傳輸器(Transmitter)會在資料節點上訂閱資料,然後將資料寫入到目標的資料庫、訊息佇列或是應用系統。

資料鏈路架構(Data Link

GRAVITY 可以藉由資料節點和節點之間的對連機制,形成更具規模的資料鏈路以及數據網路,支撐跨系統的各種應用需求,甚至是跨雲、跨異質系統的資料交換。

Gravity 資料鏈路架構

資料鏈路的擴充性

想像有個系統提供了一個可客制的物流平台,讓貨物不再只從特定單一的大型集中倉庫出貨,而是可以依照業務需求設計物流鏈路和流程,將貨物分送到離目標更近的倉庫或轉運節點,以成本更低、效率更好也更輕鬆的方式,供應貨物給商店或終端使用者。若目標地區使用者密度大、貨物需求量高,則可以擴大地區倉庫或增加更多中繼倉庫,配合新的地區物流鏈路設計,來滿足更多的需求。而這樣高度彈性能自由打造物流鏈路系統的平台,套用在資料系統上就是數據中台所扮演的角色。

數據網格(Data Mesh)

當資料鏈路擴展到一定規模,其各種部署、維運和授權機制就需要一個方法被統一管理,並形成數據網格。而在 GRAVITY 的架構上,只需要對資料節點進行管理,就能實現對數據網格的管理需求。