企業資料平臺建設的基石:構建統一的資料存算能力

星環科技發表於2023-04-06

隨著企業數字化程度的逐步提高,數字化業務對資料管理的需求也持續深化。根據企業本身所處的數字化程度不同,我們將企業的資料平臺的建設總結為五個階段,本篇我們對統一的資料儲存與算力做介紹。


— 整體介紹 
企業發展的戰略目標就是為了更好地為企業和社會創造價值,而從資料中創造價值也是創造價值的重要一個環節。資料平臺的建設需要能夠支撐起這個總體目標,同時結合企業自身情況實現一個可持續演進的技術架構。
網際網路企業引領著資料時代,以Google、Facebook、Amazon為代表的企業已經完成了從IT巨頭到DT巨頭的轉變。這些公司藉助其在大資料、雲端計算、人工智慧的技術發展優勢,快速實現業務資料化、資料資產化和企業經營資料化,加速商業價值的轉化,在引領技術風向的同時獲得了巨大的商業成功。
具體到落地上,隨著企業數字化程度的逐步提高,數字化業務對資料管理的需求也持續深化。此外,隨著近年來資料要素市場的快速發展,部分有大量高價值資料資源的企業還可以將其資料產品化,並打通到其他企業的通道,從而透過資料流通創造價值。根據企業本身所處的數字化程度不同,我們將企業的資料平臺的建設總結為如下的五個階段,如下圖所示:
除了有形的系統建設外,配套的資料組織和能力建設也是資料平臺建設的非常關鍵的體系建設,包括分散式系統運維能力、資料整合、資料治理、資料科學建模、資料產品開發與釋出等能力,隨著資料安全相關的法律法規的落地,企業甚至要求技術管理者有足夠體系的法律知識並將其運用於資料產品的價值化創造過程中。

—  統一的資料儲存與算力基礎概述 

企業啟動業務數字化的戰略後,首先需要解決的問題是如何規範、高效地收集各類業務過程依賴及產生的資料,其次是如何在科學的框架內,由淺至深地逐步加以開發和利用。這個時候企業內部很容易達成一致,需要規劃一個統一的資料基礎平臺,能夠將企業內散落在各地的資料彙集起來,並提供對這些資料做進一步探索的能力。在物理上,企業需要藉助平臺來支撐海量且持續增長的資料儲存,並且提供資料分析和計算能力,打下這些基礎後,資料團隊就可以將企業內的資料持續地彙集進來,為後續的資料化工作提供生產資料和生產工具。
隨著大資料技術的快速發展以及企業探索經驗的積累,在構建統一的資料存算基礎能力的過程中,行業裡逐漸形成了一套完善的方法論體系,主要分為平臺體系建設和技術能力體系建設。
在平臺體系建設方面,一般採用基於Hadoop體系的大資料平臺或分散式資料庫,來構建一個企業級資料湖,能夠支撐企業內部的結構化、半結構化、非結構化資料的儲存與分析,此外為了能夠支撐更多的實時性數字業務,一般在資料湖的建設過程中就會同步建設計算能力層,來支援實時計算、離線資料批處理計算以及高併發的線上分析與查詢類業務。
在這個階段,企業的技術團隊需要建設的技術能力主要包括資料整合能力、資料開發能力、平臺運維與安全管理能力。資料整合指的是將企業內部的資料透過自動化的手段彙集到資料湖中,並且會做一些技術上的資料開發工作(如不同資料庫的型別轉換,必要的資料補全等),讓資料湖中可以積累出可用的資料。資料整合的方式可以包括離線(如T+1)、準實時(分鐘級)與實時(秒級),相應的技術難度、可接入的資料庫型別等也會不同,要求的支撐工具和技能也會有較大差異。平臺運維和安全管理能力是為了保證資料湖的業務連續性和安全性,由於一般資料湖都採用分散式架構的基礎軟體,與傳統集中式資料庫有較大的運維管理差異,因此企業相關團隊需要建立起分散式系統的運維管理能力,包括高可用、叢集擴縮容、監控告警、許可權管理、全域性審計等相關的運維領域。   

—  資料儲存與算力功能要求 

資料存算基礎層是整個資料平臺層的基礎,因此企業在設計上要充分考慮對可能的業務形態的功能支撐能力,以及架構上的可持續演進能力。

在功能的設計上,由於企業的業務會有各種型別資料生成,如運營管理類的文件資料、合同資料,製造領域的時序資料、影響資料,位置類的地理資料等,因此儲存平臺需要支援結構化資料和多種非結構資料的處理能力。在可處理的資料量級上,企業要充分預估未來可能接入的資料量級,尤其是對一線業務單位可能生成的大量製造流程資料、監控管理資料等做好容量規劃,因此基礎平臺對儲存和計算的資料容量,需要有很強的擴充套件性,可以最高支援PB級資料儲存。在資料整合層面,基礎平臺層需要支援對資料的高併發寫入、搜尋、查詢等,並且支援標準的SQL語言做開發,這樣就可以很好地使用企業內部已有的資料工具。此外,基礎平臺需要支援對資料的高併發的事務操作,保證資料ACID,從而具備支撐重要業務的技術基礎,2019年後多個開源專案開始支援分散式事務,也推動了新一次大資料技術的快速發展週期。在計算能力層面,需要能夠對資料做批處理的碰撞分析,以及實時的寫入或計算。
除了基礎平臺能力層以外,配套的工具能夠提升資料團隊的工作效率,加速他們的技術能力建設過程。因此,基礎平臺層需要提供比較便捷的資料整合工具,能夠將業務資料庫對的底層資料庫中的資料整合到資料平臺中來,最好能夠支援離線與實時的混合方式。隨著國內信創產業的持續發展,對國產資料庫和平臺的支撐也是必要條件之一。而對運維和安全管理團隊來說,圖形化的運維管理工具和安全管理工具也是必須的,前者可以讓運維者方便做基於圖形化頁面來做平臺內服務的配置管理、服務啟停、儲存擴縮容、計算彈性調整等運維操作,而後者可以讓安全運維人員來設定合理的系統訪問控制策略,配置資料庫表的許可權,以及對資料操作的審計操作等。

—  資料儲存與算力架構要求 

基礎平臺層的架構對未來平臺能夠支撐的業務能力至關重要,過去十多年來大資料技術快速發展,湧現了多種不同的技術架構和一些明星產品和技術,如最早的Hadoop技術體系,到後面流批一體、存算分離、湖倉一體架構,以及最近湧現的雲原生架構、多模型資料庫架構等。這些技術社群的發展都是從某些方面推動了基礎平臺架構的發展,不過由於技術複雜度問題和普遍存在的技術宣傳超過技術本身的問題,入門者比較難有充分的、客觀理性的全面認識。為了解決這個問題,我們對相關的技術架構需要做了一個抽象和總結,並在第二章對不同的技術社群針對性的分解和論述。

  • 業務支撐層

業務支撐層主要負責對資料平臺上層資料應用的支撐,一般基於SQL或衍生API來提供開發能力,透過應用編排等方式提供資料應用的資源管理能力,同時配套提供安全管理和運維相關的功能支撐,因此業務支撐層主要的架構要求包括如下幾點:

    • 高併發、高吞吐

資料應用普遍具有一些高併發或高吞吐的特性,如面向消費者的資料產品普遍有高併發的設計要求,而實時計算類應用的資料流轉與讀寫,在設計上一般都會保證吞吐量高,因此業務支撐層就需要保障對外服務的高併發和高吞吐。落實到技術上,一般資料平臺都有SQL編譯器、連線管理器等相關的模組,為應用提供併發的JDBC/ODBC連線和資料訪問能力,這也就要求SQL編譯器等模組有較高的效能。

    • 高可用

由於資料應用大多是計算密集或者IO密集的,對資源消耗較大,為了保證平臺和應用的高可用,在架構上我們需要保證整體軟體棧的高可用性,即使在物理硬體出現問題的情況下,服務能夠正常執行。我們可以透過分散式軟體的高可用設計來保障平臺軟體層的高可用,再透過提供給應用層基於容器技術的應用編排技術來保障應用層的高可用。

    • 鏈路安全管控

資料鏈路安全是企業軟體的基礎要求,包括常規的認證、授權和審計,還可能包括為了應用的功能性安全而採取的細粒度的安全策略管控,如資料應用按照白名單或黑名單來控制接入、提供資料訪問限流等措施。這要求所有的資料訪問介面和應用都能提供比較完善的資料安全架構設計。

  • 儲存與計算層

儲存與計算層是基礎平臺的核心部分,也是最關鍵的能力要素,早期企業在選型基礎平臺的時候會側重這方面的功能與架構。隨著計算與儲存層技術的快速發展,各種新型架構的分散式儲存和計算技術不斷湧現,都在嘗試去解決不同場景下的應用技術需求,不過往上抽象起來,主要包括這幾點:

    • 分散式

分散式技術是整個大資料技術的核心,也是新的計算標準正規化。分散式儲存、分散式計算等技術是支撐行業數字化的基礎能力。

    • 可擴充套件性

由於企業資料平臺是為了未來數十年的企業資料業務發展而設計的基礎層,因此平臺一定是隨著業務持續演進的,平臺無論是在橫向、縱向的可擴充套件性方面,還是架構本身的可擴充套件性上,都需要能夠做到較高的線效能力。橫向的可擴充套件性指的是可以透過增加伺服器數量來提升處理能力,無論是儲存平臺還是計算引擎,都需要支援從GB到PB級別的資料能力。縱向的可擴充套件性指的是可以透過單臺伺服器的資源提升來帶動效能提升。架構的可擴充套件性指的是未來有更強的新型計算和儲存能力,平臺上可以持續的增加新型別的儲存與計算引擎,從而滿足不停出現的新業務的需要。

    • 多資料模型支援

企業內部的資料業務本身具有豐富的多樣性,支撐業務的資料型別也就具備多樣性。譬如經營管理類的資料一般以結構化的資料為主,而財務類資料應用就涉及大量的合同、票務單據等半結構化資料,生產製造類業務需要大量的時序資料類的能力支撐。因此企業級資料平臺就需要對多模型資料有很好的支撐能力,包括儲存、計算、查詢和生命週期管理等能力。

    • 實時計算與批處理混合

早期的資料業務主要是資料倉儲和資料湖的建設,主要涉及資料的離線計算。近幾年實時類資料業務蓬勃發展,如工業製造類的故障檢測、銀行業的線上風控、智慧營銷等核心業務場景,因此對平臺的實時計算也有很高的要求。因此,資料平臺基礎層需要支援離線計算和實時計算模式,為新業務場景做好技術基礎。

  • 資源管理層

資源管理層是保證資料平臺內的所有軟體、服務和上層的資料應用如何部署安裝、執行、如何排程和生命週期如何管理,以及對不同的業務部門如何保證所有軟體的穩定性、隔離性和安全性。早期的資料平臺在資源管理上,都採用硬體伺服器直接部署的方式,依賴架構師的規劃來落實資源管理,因此無法保證實時變化的業務的有效資源管理。到2017年行業內開始出現基於雲技術來解決,目前比較流行的方式有兩種,一種是基於容器雲和Kubernetes技術來提供分散式資料庫或資料平臺的資源管理,另外一種方式就是基於公有云的基礎設施來交付,主要取決於企業的業務交付的形式和麵向的業務客戶情況。無論採用哪種交付方式,資料平臺基礎層的資源管理架構要求可以簡單抽象為下面這幾個關鍵要素:

    • 多租戶能力

多租戶指的是一個平臺內可以按照不同的業務部門或組織單位劃分獨立的資源單位,每個資源單位內部署和執行的軟體使用不同的CPU、記憶體、磁碟等資源,相互隔離,因此不會互相爭搶硬體資源,從而保證不同部門應用的穩定性。此外由於各個部門的資料敏感性要求不一,資料持久化在不同的磁碟空間上,資料也有物理隔離性,因此可以為不同業務敏感度的資料提供不同的安全服務等級。

    • 異構軟硬體管理

資源管理層的核心任務就是管理資料中心底層的軟硬體資源,隨著AI技術的發展,大量新型加速裝置如GPU成為資料中心的標配,此外摩爾定律持續推動半導體行業的發展,一個資料中心會出現多種資源配置的硬體資源,譬如部分伺服器儲存密度高,部分伺服器的記憶體密度高等。因此,資源管理層需要能夠統一有效的管理起這些異構的軟硬體環境,能夠按照業務的特點將應用下發到合適的伺服器上執行,提高基礎平臺層的執行效率。

    • 多種生命週期的資料任務管理

從資源管理層的視角來看,資料任務分為短生命週期和長生命週期兩種。短生命週期任務包括類似機器學習模型訓練程式、資料ETL程式等,他們都是一次啟動完成計算後就結束,一般生命週期都是幾個小時以內甚至是秒級。長生命週期指的是7x24小時執行的資料應用,如對外服務的AI推理應用、移動APP的資料後臺服務等。早期的資料資源框架如Apache YARN都是針對短生命週期的任務的管理而設計的,不能支援長生命週期的任務。

    • 國產軟硬體生態支援

國內企業需要能夠基於國產信創相關技術來構建整體的生態,平臺自身也需要滿足國產化的相關要求,當前這是一個強架構要求,尤其是國計民生相關的行業,如金融、能源、交通、政府等。

—  小結

本篇介紹了企業級資料平臺建設的最基礎層—資料儲存與算力基礎層,從功能要求和架構要求兩方面剖析了建設思路。那麼完成了資料儲存和算力基礎平臺建設和資料資源歸集後,如何將有業務語義和業務價值的資料資源梳理出,並與業務銜接起來?下一篇資料資產化為你解讀。


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

相關文章