天天看點

Tapdata 實時資料融合平台解決方案(五):落地

作者介紹:TJ,唐建法,Tapdata钛鉑資料CTO,MongoDB中文社群主席,原MongoDB大中華區首席架構師,極客時間MongoDB視訊課程講師。

通過前面幾篇文章,我們從企業資料整合與分享的痛點,以及對資料中台的定義、技術需求以及技術産品的選項,都分别做了具體的闡述。

有了這麼多解決方案,我們來看一下,如果是基于一個 MongoDB 的方案會是怎麼樣?我們剛才隻是講的資料平台在做一些選擇,但是做一個完善的資料中台的話還需要很多其他子產品,是以這裡面是用到了另一個産品,就是Tapdata DaaS。通過 MongoDB 和 Tapdata DaaS 這樣一個組合,一起來做這個中台的解決方案。

這本章節裡,我們具體來介紹一下 tapdata DaaS 基于 MongoDB 的資料中台落地方案。

為什麼選擇 MongoDB 作為中台架構的資料平台

我們先來看MongoDB作為中台架構的平台優勢。

MongoDB 是一個多模資料庫。所謂多模資料就是他一套系統裡面一套分布式叢集,裡面可以做很多的不同的事情,有的時候你可以把它作為一個記憶體資料庫,可以把它作為一個目錄資料庫,也可以把它作為一個IOT的資料模型。就是說它的多模性特性是比較有特長的,而且它的自動擴充能力也是非常适合這種中台的統一平台的需求。多模多态,對彙聚性也是非常重要,因為我們需要支撐不同結構、半結構化、非結構化、甚至一些圖檔檔案能夠來做到這一些。

另外,就是MongoDB的API友好能力,采用 JSON 作為傳輸格式。我們知道現在都是微服務,都是通過Data API的方式傳遞資料中台的資料。前面業務中台往往都是用微服務,也是通過這種RESTful API,那MongoDB的這種JSON模型對新一代的這種架構式有得天獨厚的優勢,你會發現你花很少的時間就可以把這個API建構好。另外,MongoDB 也原生提供這種 Streaming API 幫助來做一些流處理的事情。是以MongoDB 作為一個中台的統一平台資料庫,其實是有非常得天獨厚的條件。

當然,除了他的多表關聯是可能是缺陷。

Tapdata 實時資料融合平台解決方案(五):落地

MongoDB另外一個優勢就是它的對象模型。我們的 JSON 模型就是非常接近于我們開發的對象,Json也好,或者是Java 裡邊的 Object,python 裡面的 Dictionary。

Tapdata 實時資料融合平台解決方案(五):落地

一個傳統的數倉,或者是現在的資料中台的資料統一平台,要做很多的資料治理。比如要做一系列的模組化的工作有概念模組化、邏輯模組化、實體模組化。而且實體模組化就是我們所謂的實體層,那就涉及到關系模型。管理一個邏輯對象,怎麼樣轉化成五張表,十張表,20張表遵從第三方訓示,這裡面其實是很複雜,也會很花時間。你要設計一個很好的模型,怎麼樣來支撐未來的業務,這也是為什麼傳統數倉會花那麼多的落地項目代價來做這個事情。

而MongoDB的解決方案能輕松地處理這方面的事情,這就是為什麼 MongoDB 會受很多開發者的喜歡:MongoDB 在模組化方面是一個非常獨特的形式,它的模型是基于類似于這種邏輯模型的對象模型。你可以把它了解為差不多是一對一。業務人員一般都會明白這個概念,比如模組化、邏輯模組化,這些模型他們心裡都有數。他們就是可能不懂那種種 DBA 說出來的的 Oracle 的這種模組化方式,但是對于 MongoDB 來說,其實你隻需要達到邏輯模組化層的話,你就可以把這事情做了。而且這個模型建完了以後,直接可以用REST API的方式傳遞出去。從這一點上來說,它是有一個技術上是非常獨到的一個先天性的優勢,尤其對我們想做這種基于API的這種服務中台來說。

MongoDB 的讀寫分離,HTAP支援全管道業務需求。 有一些開發者會說是 HTAP (Hybrid Transaction and Analytical Process),就是說又可以做分析業務,也可以做的交易型的業務。在MongoDB裡面,我們怎麼樣來做這種事情呢?比如說一個叢集裡面,一個cluster,一個複制集,我們有五個節點,四個Secondary,一個primary。左邊的primary節點可以用來直接。直接跟我們的手機或者是網頁端的應用進行互動收集,采集資料,使用者資料。那MongDB自動同步把的資料從primary同步到secondary裡面。

然後我們還可以除去左邊三個,作為正常的高可用叢集來說,我們還可以拿出兩個節點專門用來做分析,你看他這個use=analytics。就是一個标簽,就比如說這兩個節點是隻是用來做于分析型的,那這個時候我們就可以用它來上面。加上我們的BI connector,或者是直接用我們的MongoDB charts和compass,直接可以對接MongoDB資料庫做一些展示:kpi,dashboard等等。我們也可以通過一些大資料接口,比如說spark connector 來做一些大型的machine learning或者是AI都是,有很多的這種應用場景,那這些都可以最實時的,在你最新鮮的資料上通過一個讀寫分離的架構上來完成,你不需要再ETL。在MongoDB裡面,這個ETL的需求量是非常非常少的,因為可以通過原生的這種同步來提供資料的彙聚,資料放到這個分析叢集裡面。

MongoDB 還有一個觸發器的 API 也是比較實用的。就是大家如果不是太了解的話從3.6開始有個change stream,你可以用來訂閱資料庫的更新事件。比如從IOT裝置過來,有一個燈亮了,有一個裝置進入一個地理圍欄裡面發個報警。你都可以通過一個非常簡單的訂閱方式擷取這些事件,然後做一些實時的,響應式的處理,不管是在dashboard上面顯示個警告,或者是把它推送到一個Message Queue 、Kafka之類的都可以,直接就用MongoDB的原生的功能來完成。

Tapdata DaaS 是什麼?

Tapdata DaaS 是钛鉑資料為現代企業加速數字化轉型設計的資料平台,通過提供采集、存儲、組織和增強等一攬子解決方案,進而得到更加友善和友好的資料服務。

Tapdata DaaS 提供了4個主要的功能子產品,資料采集和同步、資料轉換和治理、中繼資料管理、和資料服務。

Tapdata 實時資料融合平台解決方案(五):落地

Tapdata: 為MongoDB量身定做的中台建構工具集

Tapdata DaaS 可以看做是 MongoDB 生态上一個工具集。 要做一個資料中台,要同步、要治理、要模組化、還要做API釋出,這些都不是 MongoDB 做的事情,MongoDB 主要是做資料庫為它的核心的主要的功能,其他的相應的功能就可以通過一些外圍的工具。而 Tapdata DaaS 可以快速的來實作這些不需要用代碼的方式快速把資料的同步,模組化和治理,以及釋出給快速的做出來,這個大概就是一個整體,Tapdata DaaS 加 MongoDB 的架構。下圖中的藍色的部分就是中台的幾個其他部分,綠色的就是MongoDB 的資料平台。

Tapdata 實時資料融合平台解決方案(五):落地
  • 資料同步及處理能力:

    結合 MongoDB , Tapdata DaaS 這套方案是可以快速落地, 可以最快的時間對接上資料進行模組化、同步,然後拉到中台裡面并進行把它釋出出來。舉一些例子,比如說可以從 Oracle database 裡面把它的表的資料拖到 Tapdata DaaS 的目标的中台庫裡面,然後對資料進行 JSON 模組化,或者是一對一模組化。在這個過程中,還可以是進行實時的同步,基于日志的同步。Tapdata DaaS 資料源可以支援 SQL server、Oracle、Sybase、MongoDB、DB2 、MySQL、Redis、Elasticsearch 等等,也支援檔案,比如 excel、CSV。

  • 資料模組化能力:

    基于這種内嵌的模型Embedded的模型,把一對一,一對多的關系,甚至多對一的關系就直接就合并到裡面去。這個會對客戶資料合并、産品資料合并、訂單資料合并有非常好的效率的提升。Tapdata DaaS 提供一個可視化的模組化見面,就可以很容易完成這種合并工作。

  • 資料治理能力:

    資料進到庫裡面,進到中台裡面。有來自于不同的資料庫,幾十套,上百套都有可能,每一套庫裡面有幾百張表在裡面必須有一個非常好的分類,非常好的組織能力。按照不同的目的、不同的角色、不同的規則或者資料體系給它分門别類建好在這裡面,把這資料打好标簽,這樣的話可以快速的讓大家高效的來使用到這些資料。

  • 資料API釋出能力:

    可以通過RESTful API快速的傳遞出去。提供圖形化低代碼開發工具,隻需要幾分鐘的時間就可以簡單的釋出資料給其他使用方調用。相容Open API,也可以支援行級列級的過濾。同時也會有一些API文檔的測試能力,權限管控等等,這個是中台必不可少的能力之一。

檢視系列文章:

Tapdata實時資料融合平台解決方案(一):資料架構及痛點

Tapdata實時資料融合平台解決方案(二):了解資料中台

Tapdata實時資料融合平台解決方案(三):技術需求

Tapdata實時資料融合平台解決方案(四):技術選型

Tapdata實時資料融合平台解決方案(五):落地

Tapdata 钛鉑資料