一、大數(shù)據(jù)發(fā)展回顧
數(shù)據(jù)平臺是指提供數(shù)據(jù)集成、數(shù)據(jù)存儲、數(shù)據(jù)管理、數(shù)據(jù)處理、數(shù)據(jù)分析、數(shù)據(jù)服務(wù)等數(shù)據(jù)全生命周期能力的軟件平臺。數(shù)據(jù)平臺能夠屏蔽底層大數(shù)據(jù)引擎的底層細節(jié),降低數(shù)據(jù)建設(shè)和使用門檻,對外提供統(tǒng)一的服務(wù)平臺,幫助企業(yè)實現(xiàn)數(shù)據(jù)驅(qū)動業(yè)務(wù)。下面我們將從不同發(fā)展階段來介紹大數(shù)據(jù)平臺的演化和大數(shù)據(jù)基礎(chǔ)設(shè)施的演進過程。
1、大數(shù)據(jù)平臺的演化
隨著技術(shù)的迭代更新,數(shù)據(jù)平臺也在與時俱進、不斷進化,回顧整個發(fā)展歷程,大致可以分為三個階段:
(1)傳統(tǒng)數(shù)據(jù)時代:上一世紀 80 年代到 2000 年左右處于這一階段。數(shù)據(jù)平臺和計算平臺由 Oracle、Teradata 等數(shù)據(jù)庫廠商提供,數(shù)據(jù)應(yīng)用以 BI 報表的應(yīng)用為主,主要由 SAP、微策略等 BI 公司提供能力。
(2)大數(shù)據(jù)時代:從 2000 年以后就進入大數(shù)據(jù)時代。該階段以 Hadoop 的誕生和推廣為主,得到了廣泛的發(fā)展和應(yīng)用,各個廠商也以此為基礎(chǔ)推出了自己公司的數(shù)據(jù)中臺、數(shù)據(jù)平臺等產(chǎn)品。在該階段數(shù)據(jù)平臺還是以企業(yè)內(nèi)部使用場景為主。
(3)云數(shù)據(jù)時代:隨著云計算技術(shù)的普及和發(fā)展,大數(shù)據(jù)平臺也隨之進入了云數(shù)據(jù)時代。國外誕生了諸如 Redshift、Snowflake、Databricks 等云數(shù)據(jù)平臺公司,國內(nèi)以阿里為例,在阿里云推出 Max Compute、PAI、EMR 等云上計算引擎,以及御膳房電商數(shù)據(jù)開放平臺、DataWorks 云數(shù)據(jù)開發(fā)平臺等產(chǎn)品。
數(shù)新網(wǎng)絡(luò)是在云數(shù)據(jù)時代背景下孕育而生,公司的宗旨是為客戶提供全棧式的大數(shù)據(jù)平臺和服務(wù)能力。上圖中最右側(cè)部分是數(shù)新網(wǎng)絡(luò)提供的國產(chǎn)開源可控云數(shù)據(jù)平臺 DataCyber,整體基于開源技術(shù)底座,自底向上依次提供了大數(shù)據(jù)計算存儲引擎、云數(shù)據(jù)平臺、面向垂直行業(yè)的數(shù)據(jù)中臺、以及應(yīng)用層的輕量化分析套件、應(yīng)用市場等能力。
2、大數(shù)據(jù)基礎(chǔ)設(shè)施的演進
通過回顧數(shù)據(jù)平臺的發(fā)展和演化歷程,可以總結(jié)出大數(shù)據(jù)基礎(chǔ)設(shè)施演進的四個技術(shù)階段。
(1)數(shù)據(jù)倉庫階段:以 OLAP、BI 報表分析為主。
(2)數(shù)據(jù)平臺階段:大規(guī)模數(shù)據(jù)存儲和計算,主要為批處理計算,同時結(jié)合大量在線服務(wù)的形式。
(3)數(shù)據(jù)中臺階段:以阿里為代表提出數(shù)據(jù)中臺的理念,基于數(shù)據(jù)平臺,結(jié)合數(shù)據(jù)標(biāo)準(zhǔn)、數(shù)據(jù)體系、組織變革機制,構(gòu)成整個數(shù)據(jù)中臺能力。
(4)云數(shù)據(jù)平臺階段(數(shù)據(jù)云):以云數(shù)倉為代表,典型特點是支持多租戶的資源彈性伸縮和按量計費,由此發(fā)展出現(xiàn)流批一體、湖倉一體、數(shù)智一體、云原生、存算分離、云原生、開源開放等技術(shù)方向。
云數(shù)據(jù)平臺的定義:也稱為云數(shù)據(jù)倉庫,是基于云計算技術(shù)、支持多租戶的數(shù)據(jù)平臺技術(shù)和產(chǎn)品,為用戶提供海量數(shù)據(jù)挖掘和分析服務(wù)。我們理解,云數(shù)據(jù)平臺更多指的是一種現(xiàn)代化的數(shù)據(jù)架構(gòu),其部署模式可以部署在本地數(shù)據(jù)中心、云上或混合云等多種環(huán)境。
二、云數(shù)據(jù)平臺演進趨勢
在介紹云數(shù)據(jù)平臺的演進趨勢之前,我們先回顧一下大數(shù)據(jù)平臺技術(shù)架構(gòu)的演進過程。主要分為四個階段:共享存儲架構(gòu)、大規(guī)模并行處理、SQL-ON-Hadoop、云原生架構(gòu)。每個階段都有各自的技術(shù)特點,也是適應(yīng)當(dāng)時環(huán)境而產(chǎn)生的。
(1)第一代架構(gòu):以共享存儲的架構(gòu)為代表(share storage),支持的節(jié)點很少,擴展困難,只能支撐報表分析的場景為主。
(2)第二代架構(gòu):以大規(guī)模并行處理 MPP 架構(gòu)為代表(share nothing),節(jié)點規(guī)模能夠達到百級,能夠處理的數(shù)據(jù)規(guī)模得到了一定提升,但仍存在限制。
(3)第三代架構(gòu):以 Hadoop、Spark 為代表,基于分布式的存儲、分布式的資源調(diào)度,獲得了更大規(guī)模的集群規(guī)模及數(shù)據(jù)處理規(guī)模。
(4)第四代架構(gòu):云原生架構(gòu),在新的網(wǎng)絡(luò)傳輸速度背景下,基于統(tǒng)一的分布式存儲、數(shù)據(jù)倉庫、數(shù)據(jù)湖技術(shù),支持多種類型計算引擎,從而滿足更多分析場景的需求。
下面將圍繞云原生架構(gòu),介紹云數(shù)據(jù)平臺的幾個重點技術(shù)演進方向。
1、云數(shù)據(jù)平臺演進趨勢:多元引擎
在云計算+大數(shù)據(jù)的背景下,無論是存儲引擎,還是計算引擎、實時分析引擎,都呈現(xiàn)出多元化的趨勢。
(1)存儲引擎:云上存儲如 S3、OSS 發(fā)展迅速,私有云和公有云長期并存,因此本地存儲、云上存儲也將長期并存。
(2)流批計算引擎:經(jīng)過多年的迭代演進,Spark 和 Flink 逐漸成為企業(yè)級主流計算框架,目前呈現(xiàn)出擅長不同場景的態(tài)勢:Spark 擅長高吞吐量的計算,以及機器學(xué)習(xí)、圖計算等場景;而 Flink 則擅長實時性要求高、流批一體等場景;不同企業(yè)的選擇也不盡相同。
(3)實時分析引擎:以 MPP 架構(gòu)為例,近年來不斷涌現(xiàn)新的 MPP 查詢引擎、MPP 數(shù)據(jù)庫,每個引擎都有各自擅長的場景,并處于快速發(fā)展和升級中,因此,各個企業(yè)的選擇差異較大。
基于大數(shù)據(jù)引擎多元化的這一趨勢,云數(shù)據(jù)平臺需要能夠適配支持多種類型的計算和存儲引擎。
2、云數(shù)據(jù)平臺演進趨勢:流批一體
第二個演進趨勢是實時化以及流批一體。實時處理的需求在廣泛的行業(yè)都有普遍訴求,尤其是電商、物聯(lián)網(wǎng)等。
實時數(shù)據(jù)架構(gòu)最為經(jīng)典的是 Lambda 架構(gòu)和 KAppa 架構(gòu),以及由這兩種架構(gòu)衍生的一些混合架構(gòu)方案。以目前的技術(shù)發(fā)展來看,很難做到統(tǒng)一到一種架構(gòu)。因此,我們需要的是根據(jù)不同的場景,選擇最為合適的實時數(shù)據(jù)架構(gòu)。
(1)Lambda 架構(gòu)的核心思想是提供流處理和批處理兩種處理鏈路,從而發(fā)揮流處理和批處理的優(yōu)勢,通過批處理提供全面、準(zhǔn)確的數(shù)據(jù),通過流處理提供低延遲的數(shù)據(jù),從而達到平衡延遲、吞吐量和容錯性的目的。為了滿足下游的即席查詢,批處理和流處理的結(jié)果會進行合并。它適用于已有完備的離線數(shù)倉平臺,實時計算較少的場景。
(2)Kappa 架構(gòu)的核心思想是通過改進流計算系統(tǒng)來解決數(shù)據(jù)全量處理的問題,使得實時計算和批處理過程使用同一套代碼。優(yōu)勢在于統(tǒng)一了流批數(shù)據(jù)邏輯,但受限于處理性能,適用于以實時計算為主,全量數(shù)據(jù)吞吐量可控的場景。
3、云數(shù)據(jù)平臺演進趨勢:湖倉一體
第三個演進趨勢是湖倉一體。數(shù)據(jù)倉庫和數(shù)據(jù)湖的介紹和對比,這里不再詳細展開,在企業(yè)發(fā)展的不同階段,需要做到兼顧數(shù)據(jù)倉庫和數(shù)據(jù)湖的優(yōu)勢,達到更好的數(shù)據(jù)管理和使用能力。在湖倉分體階段,本質(zhì)上數(shù)據(jù)是沒有打通的,是存在壁壘的。而湖倉一體階段的核心是數(shù)據(jù)統(tǒng)一存儲,湖倉共享同一份數(shù)據(jù)進行計算或者分析。所以湖倉一體架構(gòu)可以更加靈活的支持各種分析場景、機器學(xué)習(xí)、BI 報表、推薦算法等。
目前主流的湖倉一體方案大致分為兩大類:
(1)在數(shù)據(jù)倉庫上支持數(shù)據(jù)湖(左右結(jié)構(gòu)):一般是通過在數(shù)倉中建外部表來實現(xiàn),解決數(shù)據(jù)倉庫如何更加靈活,以數(shù)倉為核心,支持訪問數(shù)據(jù)湖。代表廠商有 Snowflake 等。
(2)在數(shù)據(jù)湖中支持數(shù)倉能力(上下結(jié)構(gòu)):一般是以數(shù)據(jù)湖存儲為基礎(chǔ),在數(shù)據(jù)湖之上構(gòu)建數(shù)據(jù)倉庫的服務(wù)層,強化數(shù)據(jù)治理和數(shù)據(jù)服務(wù)的提供。代表廠商是 Databricks 等。
這兩種方案本身沒有優(yōu)劣之分,需要企業(yè)結(jié)合自身的技術(shù)棧和數(shù)據(jù)需求,選擇適合企業(yè)現(xiàn)狀和未來規(guī)劃。
4、云數(shù)據(jù)平臺演進趨勢:云原生、存算分離
第四個演進趨勢是云原生、存算分離。Hadoop 大數(shù)據(jù)處理框架在長期的發(fā)展中一直是存算耦合的方式,在當(dāng)下企業(yè)數(shù)據(jù)中心網(wǎng)絡(luò)進入萬兆、十萬兆帶寬,數(shù)據(jù)規(guī)模增長顯著高于數(shù)據(jù)計算需求的背景下,導(dǎo)致存算資源很難進行合理分配,存算耦合的優(yōu)勢變得越來越弱。另外,數(shù)據(jù)湖、云原生、對象存儲等技術(shù)的發(fā)展,也都推動了企業(yè)大數(shù)據(jù)基礎(chǔ)設(shè)施朝著存算分離的架構(gòu)方向演進。
目前主流的存算分離架構(gòu)包含以下兩種:
(1)基于 Hadoop 的存算分離架構(gòu):將 Yarn 集群和 HDFS 集群分別部署兩個集群,從而實現(xiàn)存儲與資源管理的解耦,這種方式增加了一種額外的運維負擔(dān)、以及本地讀的性能損失,但是根據(jù)相關(guān)企業(yè)的實踐經(jīng)驗來看,損失可控,對于關(guān)注大數(shù)據(jù)平臺成本、同時以私有云為主的場景下,是可以采用這種方案的。
(2)云原生存算分離架構(gòu):該架構(gòu)優(yōu)勢在于資源彈性化、數(shù)據(jù)云上化。在該架構(gòu)下,存儲集群、資源調(diào)度、計算引擎是高度解耦的,底層存儲可以是 HDFS,也可以是 S3 協(xié)議實現(xiàn)等;資源調(diào)度則完全擁抱 K8S,計算引擎可以支持多種主流引擎。
5、云數(shù)據(jù)平臺演進趨勢:混合云、數(shù)據(jù)云
第五個演進趨勢是多云、混合云、數(shù)據(jù)云。對于企業(yè)來說,數(shù)據(jù)中心同時在公有云、私有云部署越來越成為常態(tài),在此背景下要求云數(shù)據(jù)平臺具有同時管理本地機房數(shù)據(jù)和云上數(shù)據(jù)的能力,達到基于一套平臺對不同數(shù)據(jù)進行管理的效果,并且要求云數(shù)據(jù)平臺具有跨云數(shù)據(jù)管理的能力。這也必然產(chǎn)生企業(yè)之間、企業(yè)內(nèi)部的跨云數(shù)據(jù)流動問題,需要有相應(yīng)的機制進行安全保障。例如,隱私計算技術(shù)用于解決不同企業(yè)之間的數(shù)據(jù)平臺之間的數(shù)據(jù)安全流動。
三、云數(shù)據(jù)平臺技術(shù)架構(gòu)
以上介紹了云數(shù)據(jù)平臺的技術(shù)演進趨勢,下面將為大家分享現(xiàn)代化云數(shù)據(jù)平臺的典型技術(shù)架構(gòu)。
1、總體架構(gòu)設(shè)計
上圖所示是一個典型的云數(shù)據(jù)平臺總體技術(shù)架構(gòu),自底向上依次分為幾部分構(gòu)成:
(1)數(shù)據(jù)源:平臺支持多種類型的結(jié)構(gòu)化數(shù)據(jù)、半結(jié)構(gòu)化數(shù)據(jù)、非結(jié)構(gòu)化數(shù)據(jù)。
(2)湖倉存儲引擎:提供大數(shù)據(jù)統(tǒng)一存儲能力,支持 HDFS 和對象存儲兩種分布式存儲系統(tǒng),支持數(shù)據(jù)倉庫、數(shù)據(jù)湖的主流存儲格式,支持針對數(shù)據(jù)湖場景進行查詢加速。
(3)資源調(diào)度框架:支持 Yarn 和 K8S 兩種分布式資源調(diào)度能力,能夠同時支持存算耦合、存算分離的數(shù)據(jù)架構(gòu),覆蓋傳統(tǒng)大數(shù)據(jù)集群資源調(diào)度、云原生彈性資源調(diào)度的場景。
(4)計算分析引擎:支持 Hive/Flink/Spark 等流批引擎、TensorFlow 等機器學(xué)習(xí)引擎、TSDB/Neo4j 等專用計算引擎;支持 GaussDB/StarRocks 等 MPP 分析引擎、Presto/Impala 等聯(lián)邦查詢引擎;支持離線數(shù)倉、實時數(shù)倉、湖倉一體等開發(fā)場景。多元異構(gòu)引擎通過 Hive 元數(shù)據(jù)作為元數(shù)據(jù)標(biāo)準(zhǔn)實現(xiàn)元數(shù)據(jù)打通和統(tǒng)一管理。
(5)云數(shù)據(jù)操作系統(tǒng)內(nèi)核:提供通用的技術(shù)服務(wù)組件,銜接底層大數(shù)據(jù)引擎和上層數(shù)據(jù)開發(fā)治理平臺,這里重點展示了幾個最為核心的組件:統(tǒng)一元數(shù)據(jù)系統(tǒng)、統(tǒng)一引擎接入網(wǎng)關(guān)、統(tǒng)一任務(wù)調(diào)度系統(tǒng)、數(shù)據(jù)集成系統(tǒng)、跨網(wǎng)傳輸服務(wù);其中,跨網(wǎng)傳輸服務(wù)是專門用于解決混合云等多云場景下數(shù)據(jù)高速、安全流通的基礎(chǔ)服務(wù),例如,隱私計算場景下的密態(tài)數(shù)據(jù)傳輸。
(6)數(shù)據(jù)開發(fā)治理平臺:圍繞數(shù)據(jù)的采集、開發(fā)、運維、管理、服務(wù)、質(zhì)量、安全等全生命周期,提供一站式全鏈路的數(shù)據(jù)開發(fā)和服務(wù)平臺。
(7)平臺管理:整個平臺的支撐系統(tǒng),包含租戶、賬號、權(quán)限、項目、資源等基礎(chǔ)能力,通常由一個多租戶技術(shù)組件來承載實現(xiàn)。
限于篇幅原因,下面將主要和大家分享統(tǒng)一元數(shù)據(jù)系統(tǒng)、統(tǒng)一調(diào)度系統(tǒng)、數(shù)據(jù)集成系統(tǒng)這幾個核心技術(shù)組件的架構(gòu)實現(xiàn)。
2、核心技術(shù)組件—統(tǒng)一元數(shù)據(jù)系統(tǒng)
為了能夠適用于多元異構(gòu)的大數(shù)據(jù)引擎組件,統(tǒng)一元數(shù)據(jù)服務(wù)支持兩種能力:
第一種是與 Hive Metastore 實現(xiàn)打通,支持 Hive 元數(shù)據(jù),通過 Hive 元數(shù)據(jù)為計算分析引擎提供元數(shù)據(jù)管理能力。
第二種是擴展支持更廣范圍數(shù)據(jù)源的元數(shù)據(jù)管理能力,基于計算引擎的自定義 Catalog 擴展機制,為 Spark/Flink 等引擎提供元數(shù)據(jù)能力。
(1)元數(shù)據(jù)服務(wù)管理
基于業(yè)界開源的元數(shù)據(jù)標(biāo)準(zhǔn)提供元數(shù)據(jù)能力,主要體現(xiàn)在與 Hive Metastore 進行交互,實現(xiàn)對 Flink、Spark 等計算引擎的管理。通過元數(shù)據(jù)接口實現(xiàn)多元異構(gòu)系統(tǒng)的統(tǒng)一元數(shù)據(jù)存儲和管理,實現(xiàn)外界元數(shù)據(jù)主動發(fā)現(xiàn)、多計算引擎元數(shù)據(jù)互通、跨多源計算。
(2)元數(shù)據(jù)權(quán)限管理
其核心能力主要包括:元數(shù)據(jù)權(quán)限控制、統(tǒng)一數(shù)據(jù)權(quán)限、角色權(quán)限配置、訪問日志審計等。
(3)元數(shù)據(jù)治理
其核心能力主要包括:湖表管理與優(yōu)化、數(shù)據(jù)生命周期管理、數(shù)據(jù)血緣、存儲分析與優(yōu)化等。
3、核心技術(shù)組件—統(tǒng)一調(diào)度系統(tǒng)
調(diào)度系統(tǒng)主要分為兩部分:Coordinator 集群和 Worker 集群。
(1)Coordinator 集群(調(diào)度器)
整個調(diào)度系統(tǒng)的大腦,主要職責(zé)包括:作業(yè)調(diào)度、資源調(diào)度、作業(yè)實例生成以及作業(yè)實例下發(fā)、對外提供服務(wù) API 等。技術(shù)架構(gòu)關(guān)注點:高穩(wěn)定性、高可用性、高并發(fā)。
(2)Worker 集群(執(zhí)行器)
主要職責(zé)包括:負責(zé)作業(yè)的實際執(zhí)行過程,可以是本地執(zhí)行,也可以是提交到遠端執(zhí)行;技術(shù)上核心關(guān)注多種類型任務(wù)的適配性、擴展性、資源隔離性等方面。
從功能上,需要覆蓋不同類型的作業(yè),多種周期調(diào)度,靈活的依賴關(guān)系,補數(shù)據(jù)、斷點重跑等完備的調(diào)度功能;從性能和可用性上,調(diào)度器和執(zhí)行器需要滿足分布式無中心的設(shè)計,能夠?qū)崿F(xiàn)水平擴展和故障轉(zhuǎn)移。
值得特別說明的是,在超大規(guī)模作業(yè)調(diào)度的場景下,需要進行技術(shù)架構(gòu)的進一步升級,包括通過按租戶進行 Coordinator 集群水平擴展、調(diào)度元數(shù)據(jù)分庫存儲等技術(shù)手段實現(xiàn)調(diào)度系統(tǒng)的高可用和穩(wěn)定性。
4、核心技術(shù)組件—數(shù)據(jù)集成系統(tǒng)
數(shù)據(jù)集成系統(tǒng)的核心功能是實現(xiàn)異構(gòu)數(shù)據(jù)源之間數(shù)據(jù)的高速集成,目前主流的數(shù)據(jù)集成采用 Spark、Flink 等分布式計算引擎實現(xiàn)數(shù)據(jù)的高效集成。
(1)在功能方面,能夠支持批量同步、流式同步、全量同步、增量同步等場景。
(2)在架構(gòu)方面,由于采用的是分布式計算引擎,能夠根據(jù)數(shù)據(jù)規(guī)模決定計算資源,具有較好的水平擴展能力。
(3)在網(wǎng)絡(luò)方面,需要能夠針對云上、混合云的復(fù)雜網(wǎng)絡(luò)場景,解決跨網(wǎng)段的傳輸能力。
5、關(guān)鍵技術(shù)要點總結(jié)
通過以上介紹,相信大家對數(shù)新網(wǎng)絡(luò)云數(shù)據(jù)平臺的技術(shù)架構(gòu)也有了一定的了解,其關(guān)鍵技術(shù)點主要是:異構(gòu)引擎計算、統(tǒng)一元數(shù)據(jù)系統(tǒng)、統(tǒng)一調(diào)度系統(tǒng)、數(shù)據(jù)集成系統(tǒng)和一體化架構(gòu)。
四、云數(shù)據(jù)平臺實踐案例
1、工業(yè)制造數(shù)據(jù)開發(fā)治理平臺
該案例是面向產(chǎn)業(yè)生態(tài)建設(shè)的客戶,其主要以數(shù)據(jù)為驅(qū)動力,加強企業(yè)的設(shè)計研發(fā)、生產(chǎn)制造、市場服務(wù)等,并且對企業(yè)數(shù)據(jù)資產(chǎn)進行全面工具化管理,針對合同、制造、適航、績效等七大業(yè)務(wù)場景提供數(shù)據(jù)服務(wù),提升企業(yè)生產(chǎn)、管理、運營的效率。
數(shù)新網(wǎng)絡(luò)根據(jù)客戶的需求場景,為其量身打造了流批一體架構(gòu)的一站式大數(shù)據(jù)開發(fā)平臺。通過異構(gòu)數(shù)據(jù)采集、流批一體計算、數(shù)據(jù)服務(wù)、數(shù)據(jù)應(yīng)用等功能一站式支持客戶的各個場景,大大提升了客戶的生產(chǎn)效率。
該解決方案是基于數(shù)新網(wǎng)絡(luò)自主研發(fā)的云數(shù)據(jù)平臺(CyberMeta)來實現(xiàn)的,該平臺是高度集成、一站式的全鏈路平臺,能夠根據(jù)客戶的業(yè)務(wù)場景和數(shù)據(jù)架構(gòu)輸出定制化的解決方案,例如離線數(shù)倉、實時數(shù)倉、流批一體數(shù)倉、湖倉一體等方案。
五、問答環(huán)節(jié)
Q1:怎么實現(xiàn)無中心化?
A1:該問題是基于調(diào)度系統(tǒng)的問答。集群去中心化設(shè)計的關(guān)鍵點在于如何設(shè)計合理的數(shù)據(jù)分片策略。以調(diào)度系統(tǒng)為例,調(diào)度系統(tǒng)的元數(shù)據(jù)是存儲在 Database 中的,可以直接基于 Database 做業(yè)務(wù)元數(shù)據(jù)的分片,如不同節(jié)點負責(zé)拉取和處理不同租戶或項目的作業(yè)調(diào)度,根據(jù)業(yè)務(wù)場景選擇合適的分片邏輯。
Q2:如何實現(xiàn)跨不同 VPC 的打通?支持哪些云?
A2:跨不同 VPC 打通需要基于云廠商提供的 VPC 網(wǎng)絡(luò)打通方案來實現(xiàn),并且云上部署的大數(shù)據(jù)產(chǎn)品支持的網(wǎng)絡(luò)部署模式也不完全相同。因此,需要結(jié)合大數(shù)據(jù)引擎的部署情況以及云廠商對 VPC 網(wǎng)絡(luò)通道方案進行合理的技術(shù)方案設(shè)計與實現(xiàn)。
Q3:具體介紹下統(tǒng)一元數(shù)據(jù)服務(wù)包含哪些功能?
A3:元數(shù)據(jù)服務(wù)核心提供兩個能力:一是構(gòu)建統(tǒng)一的元數(shù)據(jù)服務(wù),通過元數(shù)據(jù)主動發(fā)現(xiàn)與采集,實現(xiàn)元數(shù)據(jù)統(tǒng)一存儲,提供統(tǒng)一的元數(shù)據(jù)服務(wù),實現(xiàn)存儲、計算和服務(wù)的全鏈路元數(shù)據(jù)管理能力;二是提供元數(shù)據(jù)產(chǎn)品化的能力,包括數(shù)據(jù)資產(chǎn)管理、元數(shù)據(jù)權(quán)限管理、元數(shù)據(jù)治理等能力。
Q4:整體平臺的云原生程度如何,部署架構(gòu)是怎樣的?
A4:數(shù)新網(wǎng)絡(luò)提供的云數(shù)據(jù)平臺采用的是兩種技術(shù)路線并行:一是傳統(tǒng)的(非原生的)技術(shù)架構(gòu);二是云原生技術(shù)模型,基于存算分離的架構(gòu)實現(xiàn)。兩種技術(shù)架構(gòu)主要是適用于不同的客戶:對于追求穩(wěn)定并且資源不敏感的用戶,我們會提供非原生的技術(shù)架構(gòu),例如通過 Hadoop+Spark/Flink 實現(xiàn)數(shù)據(jù)的存儲、計算;對于資源敏感且對云原生接受度高、業(yè)務(wù)場景關(guān)注資源彈性伸縮的客戶,我們會選擇云原生的技術(shù)架構(gòu)提供服務(wù)。目前部署上支持私有云部署、公有云部署、混合云部署。
Q5:混合云如何實現(xiàn)數(shù)據(jù)安全管理?
A5:在同一租戶內(nèi)部或者企業(yè)內(nèi)部場景下,實現(xiàn)思路主要體現(xiàn)在以下幾個方面:一是通過 OpenLDAP+Kerberos+Ranger 等安全組件,支持存儲的安全認證和管控;二是基于統(tǒng)一的元數(shù)據(jù)服務(wù),管理分布在混合云上的不同數(shù)據(jù)中心的元數(shù)據(jù)信息,并做好數(shù)據(jù)權(quán)限管理;三是敏感數(shù)據(jù)做好數(shù)據(jù)加密、數(shù)據(jù)脫敏等安全加固,完成處理后做好計算結(jié)果的保護;四是在跨網(wǎng)傳輸時做好數(shù)據(jù)安全傳輸。
在跨租戶場景下,數(shù)據(jù)安全管理核心需要保障不同租戶的數(shù)據(jù)不被泄露的前提下進行安全使用。可以借助于可信數(shù)據(jù)沙箱、隱私計算等技術(shù),基于底層的大數(shù)據(jù)引擎底座和大數(shù)據(jù)操作系統(tǒng)內(nèi)核服務(wù),構(gòu)建多方之間的聯(lián)合數(shù)據(jù)分析、聯(lián)合建模預(yù)測等數(shù)據(jù)流通機制。
Q6:流批一體如何考慮交互式分析和機器學(xué)習(xí)?
A6:流批一體核心解決的是數(shù)據(jù)處理邏輯的統(tǒng)一性問題,目前主要采用的是基于Flink做流批一體實時數(shù)倉。交互式分析是針對高并發(fā)、低延時實時分析處理數(shù)據(jù)的場景,例如基于交互式分析引擎+ BI 工具對數(shù)據(jù)進行多維分析和業(yè)務(wù)探索,它與流批一體計算針對的是不同的數(shù)據(jù)處理場景。至于流批一體機器學(xué)習(xí),業(yè)界有阿里開源的 Alink 機器學(xué)習(xí)平臺,感興趣的話可以了解一下。
Q7:目前 Delta Lake 生產(chǎn)上可用嗎?
A7:目前這幾個數(shù)據(jù)湖引擎都處在快速迭代更新階段,因此不同版本的功能和穩(wěn)定性會差異比較大。目前數(shù)新網(wǎng)絡(luò)在數(shù)據(jù)湖引擎方向上面向客戶輸出的是 Hudi 和 Iceberg。
Q8:Yarn 和 K8S 可以一起使用嗎?
A8:這兩種資源調(diào)度框架是根據(jù)不同客戶的場景選擇使用哪種資源調(diào)度框架。例如客戶已經(jīng)有 Hadoop 集群,我們就可以構(gòu)建 Spark/Flink on Yarn 的架構(gòu),直接采用 Yarn 資源進行調(diào)度。如果客戶數(shù)據(jù)已上云或者已有 K8S 集群,那么我們會建議基于 K8S 構(gòu)建大數(shù)據(jù)平臺,Spark/Flink 也都可以不同的 K8S 部署模式。當(dāng)然,也有少數(shù)客戶同時有兩種場景的需求,此時客戶也是可以同時使用 Yarn 和 K8S 分別管理不同類型的計算資源集群。
Q9:Analysis Ready Schemas 具體指的是什么?
A9:這個概念是指通過主動元數(shù)據(jù)收集等方式,完成數(shù)據(jù)集 Dataset 的 Schema 收集及結(jié)構(gòu)化、歸一化,數(shù)據(jù)集成系統(tǒng)能夠基于收集的 Schema 信息,方便地定義和配置數(shù)據(jù)同步任務(wù),完成數(shù)據(jù)的提取、傳輸和加載。
Q10:數(shù)據(jù)開發(fā)是如何使用元數(shù)據(jù)服務(wù)進行開發(fā)的?
A10:元數(shù)據(jù)服務(wù)的使用場景很廣泛,在數(shù)據(jù)開發(fā)場景中,例如 Web IDE 可以基于元數(shù)據(jù)查看庫表信息、UDF 信息、實現(xiàn)表名稱、表字段自動補全等功能。在數(shù)據(jù)管理場景中,可以基于元數(shù)據(jù)提供數(shù)據(jù)資產(chǎn)目錄,例如支持數(shù)據(jù)地圖、數(shù)據(jù)治理等功能的實現(xiàn)。尤其在數(shù)據(jù)治理場景下,還可以實現(xiàn)智能化的能力,例如通過元數(shù)據(jù)系統(tǒng)探查到上游表發(fā)生了變化,可以自動對下游任務(wù)進行告警,甚至是自動化處理等。
Q11:大數(shù)據(jù)存儲組件也云化了嗎?
A11:以數(shù)新網(wǎng)絡(luò)的產(chǎn)品為例,不同的客戶采用不同的存儲方案,有些客戶是云化的,有些客戶是本地的。云化的場景主要是在 S3 或者 OSS 中存儲,本地的以 HDFS 存儲為主。在混合云的場景下,數(shù)據(jù)存儲還可能是同時包含云化和本地的。
Q12:如何理解湖倉共享同一份數(shù)據(jù)?
A12:具體可以分為兩種場景:一是基于數(shù)據(jù)湖建倉,數(shù)據(jù)通過流式采集的方式匯集到數(shù)據(jù)湖中,基于湖數(shù)據(jù)進行分析、計算等。但隨著數(shù)據(jù)體量的增大和企業(yè)不同階段的發(fā)展,數(shù)據(jù)管理、標(biāo)準(zhǔn)化、規(guī)范化的訴求也不斷增加,此時結(jié)合湖倉一體的優(yōu)勢,在數(shù)據(jù)湖的基礎(chǔ)上構(gòu)建數(shù)據(jù)倉庫,以更好的實現(xiàn)數(shù)據(jù)的管理和處理;二是在完備數(shù)倉的基礎(chǔ)上打通數(shù)據(jù)湖的能力,該場景不同于湖上建倉的上下分層的結(jié)構(gòu),而是左右分層的結(jié)構(gòu),通過外表等機制支持湖和倉的打通,該場景在嚴格意義上講并沒有完全做到數(shù)據(jù)集中化存儲一份。
Q13:新一代云數(shù)據(jù)平臺等同于云原生數(shù)據(jù)湖嗎?
A13:不完全等同。新一代云數(shù)據(jù)平臺體現(xiàn)在很多方面,云原生只是其中一個方面,還包括多云、混合云、多元異構(gòu)引擎、流批一體、湖倉一體等方面。云原生數(shù)據(jù)湖只是云數(shù)據(jù)平臺的一種技術(shù)架構(gòu)和實現(xiàn)路徑。
Q14:Spark/Flink 上云是用的什么技術(shù)?
A14:Spark/Flink 支持多種 K8S 部署模式,包括 Standalone、Native、Operator 等部署模式,可以重點關(guān)注 Native 和 Operator 模式,能夠方便的支持動態(tài)的資源伸縮等能力。
Q15:介紹一下智能調(diào)度方案?
A15:調(diào)度智能化是一個重要方向。舉兩個例子,一是基于任務(wù)運行的歷史信息,實現(xiàn)任務(wù)調(diào)度策略、任務(wù)計算資源的優(yōu)化,以保證整個平臺的任務(wù)調(diào)度穩(wěn)定性和高性能。二是基于統(tǒng)一元數(shù)據(jù)服務(wù),實現(xiàn)調(diào)度系統(tǒng)的智能化告警,甚至是任務(wù)的自動化問題修復(fù),以此提升數(shù)據(jù)平臺的智能化和自動化運維能力。
Q16:StarRocks 和 Doris 是同一個產(chǎn)品嗎?
A?16:它們都屬于 MPP 數(shù)據(jù)庫,二者從功能和定位上有很大相似之處,但并不是同一個產(chǎn)品。Doris 是在 Apache 基金會維護,基于 Apache License 開源的 MPP 數(shù)據(jù)庫。StarRocks 是基于 Elastic License 開源的 MPP 數(shù)據(jù)庫,與國內(nèi)幾個云廠商都有合作。目前數(shù)新網(wǎng)絡(luò)和 StarRocks 公司已經(jīng)簽署戰(zhàn)略合作協(xié)議,雙方在產(chǎn)品集成、性能壓測及優(yōu)化等方向均有合作。
今天的分享就到這里,謝謝大家。?