簡介: 2020年雙11,雲原生實時數倉首次在阿里巴巴雙11核心資料場景落地,實現商業全鏈路實時化,毫秒級海量資料處理能力。搜尋推薦業務資料開發效率提升4倍,菜鳥物流包裹資料鏈路從小時級最佳化到3分鐘,考拉分鐘及小時業務1分鐘內完成,大資料的實時分析與決策在瞬息萬變的市場競爭中成為了標品!今天,我們將向大家分享阿里雲實時大資料解決方案,助力企業實時決策。
效能高1倍,價格低3/4!資料庫實時同步新選擇!實時分析決策的第一步就需要將資料實時同步到大資料計算引擎,DataWorks資料整合採用自研高效能引擎,在相同的機器規格情況下,RDS實時同步效能最高為其他資料同步方案的2倍,而價格可低至其1/4。透過DataWorks資料整合,企業可以進行高效、低成本、穩定的實時資料同步。
DataWorks資料整合可以追溯到2011年的DataX1.0和2.0版本,隨後3.0版本正式對外提供服務,再後來公有云、專有云、阿里內部功能三版合一,建立了Data Integration 服務。在2019年,DataWorks資料整合完成了商業化,獨享資源組上線,按量付費、包年包月的付費方式也成功面向了使用者。在2020年,全增量實時同步解決方案正式釋出。
在全增量實時同步解決方案系統中,可以從MySql、Oracle、IBM DB2、SQL server、POLARDB等關係型資料庫中全量離線同步到MaxCompute、Hologres、Elasticsearch、Kafka、DataHub等大資料產品中,再實現實時抽取關係型資料庫的變更資訊,同步到大資料產品中。像MaxCompute這種離線數倉,可以透過同步到Log表、拆分至Delta表、Merge到Base表,最後再寫入MaxCompute這樣的方式做實時增量同步。
DataWorks資料整合可以透過實時庫監控抽取從關係型資料庫(MySQL、Oracle、PolarDB等)抽取資料,再採取訊息訂閱的方式匯聚實時訊息流資料,匯聚起來的資料可以去做一些資料處理,包括資料過濾、字串替換和以後將會支援的Groovy函式,這也是一個比較標準的ETL流程。處理好的資料可以多路輸出到不同資料來源,再配合上實時運維監控和告警系統,就形成了整庫全增量的解決方案,讓實時同步具備從整庫全量同步到整庫實時增量同步再到大資料自動增量融合這樣的完整鏈路。另外,實時同步的架構是高可用的,DataWorks資料整合在管控層和執行層都做了備用機器結構,如果排程或者資料傳輸鏈路斷了,可以緊急地切換到另一條鏈路,保證任務的穩定執行。
資料整合的實時同步技術自帶髒資料收集機制,在整個ETL的鏈路中,無論是讀取端還是寫入端不支援的資料,都可以透過外掛中心的能力收集並輸出到使用者配置的目標端,包括本地日誌、Loghub、MaxCompute等,為資料的再處理提供支援。
在大資料上雲解決方案中,透過資料整合將離線和實時的資料分別透過離線引擎(EMR、MaxCompute)和實時引擎(MaxCompute互動式分析(Hologres)、Flink)去做資料處理,然後匯聚到DataWorks中做資料開發和資料服務,包括機器學習PAI平臺去做模型開發等,最後開放給資料應用去使用,包括QuickBI、DataV、Tableau等。
基於上雲解決方案,建立了多種場景化解決方案,包括智慧實時數倉解決方案、實時監控大屏解決方案、資料湖解決方案,其中比較典型的智慧實時數倉解決方案,適用於電商、遊戲、社交等網際網路行業大規模資料實時查詢場景:
第一步:資料採集–透過DataWorks資料整合(批次+實時)、DataHub(實時)進行統一資料採集接入。
第二步:基於DataWorks完成資料全鏈路研發,包括資料整合、資料開發&ETL 、轉換及KPI計算等開發,以及資料作業的排程、監控、告警等。DataWorks提供資料開發鏈路的安全管控的能力,以及基於DataWorks的資料服務模組提供統一資料服務API能力。
第三步:實時資料按實際業務需求使用Flink中進行實時ETL(可選),結果入庫MaxCompute互動式分析(Hologres)構建實時資料倉庫、應用集市,並提供海量資料的實時互動查詢和分析。Hologres提供實時離線聯邦查詢。
第四步:基於阿里QuickBI進或第三方資料分析工具如Tableau行資料視覺化,以及構建各業務板塊資料服務門戶應用。
該方案將阿里雲實時數倉全套鏈路與離線數倉無縫打通。滿足一套儲存,兩種計算(實時計算和離線計算)的高性價比組合。
基於Hologres和Flink的實時資料分析方案資料整合將資料同步過來以後,我們需要實時的資料倉庫將這些資料更好地應用起來。剛才簡單介紹了實時數倉的解決方案,接下來我們向大家詳細介紹基於Hologres和Flink的實時資料分析方案。MaxCompute互動式分析(Hologres)提出實時數倉“服務分析一體化”的概念,讓一個大資料引擎既能滿足 OLAP的實時洞察分析又能滿足KV式的高QPS點查特徵服務的需求,將實時分析和服務做到很好的融合,極大的簡化了實時數倉架構的複雜度,助力客戶實時的分析與決策。
隨著數字化轉型的快速推進,資料量呈現爆發式的增長,而對資料計算的要求越來越高,低延時、低資源消耗、高效率、高精準度等。 如何從這些海量的歷史資料和每日實時增量資料中快速彙總分析、挖掘出業務價值已成為業務最基本的需求。
在這個過程中,很多公司推出了批處理、實時計算,但離線批次數倉和實時分析具有不可調和性,離線數倉滿足不了業務時效性的要求,而絕對的實時數倉也不切實際,“近實時”才有意義,而實時分析、近實時的分析構建離不開實時數倉系統的構建。
企業在實時數倉建設過程中應用最廣泛的當屬Labmda架構,它一定程度上解決了大部分企業數字化建設初期的業務問題,但是隨著業務的快速發展、資料量的暴漲和業務需求的變化,Lambda架構的問題也就逐步凸顯,主要包括幾個方面:1)資料在不同的系統中儲存多份,空間浪費,資料一致性的問題難以解決;2)整個資料鏈路由多種引擎和系統組合而成,開發和維護成本高,學習成本高;3)從使用上來說,離線加工,實時加工以及統一資料服務層等處理過程中均使用不同的加工語言和介面,使用起來並不容易;4)學習成本非常高,增大了應用成本。因此架構簡化、成本最佳化、資料統一、學習門檻低、適應業務敏捷、自助式分析趨勢成為了迫切的需求,企業期望有一款全新的大資料產品,可以滿足實時寫入、實時計算、實時洞察需求;能做到實時離線一體化,減少資料移動,業務技術解耦支援自助式分析,從而簡化整個業務系統架構。
在這樣的背景下,Hologres推出了HSAP理念。 HSAP是指Hybrid Serving & Analytical Processing,是既能支援高QPS的點查場景實時寫入和查詢,又能將複雜的多維分析場景在一套體系裡面完成。HSAP相當於資料倉庫+線上資料服務,是兩者的超集。企業需要統一實時資料和離線資料的儲存,提供高效的查詢服務,支援高QPS的查詢,支援複雜的分析以及聯邦查詢和分析,並且能夠直接對接前端應用,做到即席分析,統一資料服務,減少資料移動。Hologres作為以HSAP理念開發的產品, 隸屬於阿里自研大資料品牌MaxCompute,支援PB級資料高併發、低延遲的分析和服務,支援實時數倉、大資料互動式分析等場景。其核心特點是分析服務一體化、以實時為中心進行設計、儲存計算分離架構、相容PG生態。
Hologres在全鏈路實時數倉建設場景,與Flink做了深度的融合,同時支援Flink的sink表、source表、維表。業務上可以基於Flink進行實時ETL清洗、轉換,將明細資料、輕度彙總資料以及業務彙總資料儲存在Hologres,再透過Hologres實時查詢並輸出資料至第三方分析工具進行實時分析。
MaxCompute+Hologres可以構建秒級互動式分析,MaxCompute數倉可以透過Hologres直接加速查詢,無需資料移動,並對接BI分析工具,實現實時分析離線資料。也支援MaxCompute資料快速匯入Hologres構建索引,提供更高QPS、更快查詢響應的查詢服務。
Holgores+Flink+MaxCompute可以實現“實時、離線、分析、服務一體化方案”。冷資料儲存在MaxCompute中,熱資料儲存在Hologres中。同時透過與達摩院向量引擎庫Proxima的深度整合,可應用於實時推薦場景,實時推薦依賴特徵查詢、實時指標計算、向量檢索召回,Hologres向量查詢功能與Proxima深度整合可以提供高效能的向量查詢服務,再加Flink和PAI,可以應用於實時個性化推薦、影象、影片及人臉等,提高廣告留存率。
目前Hologres已經在多個客戶及場景使用,進行大資料分析與決策。1) 小紅書之前自建了一個較大規模的ClickHouse叢集,但是運轉一段時間後,ClickHouse的弊端凸顯,比如成本高、查詢慢、不穩定、叢集運維複雜。採用了Hologres後,獲得儲存計算分離的架構,輕鬆儲存了15天資料,並且可以快速查詢7天甚至15天資料,查詢效能有大幅度提升;還有主鍵去重(insert or ignore),上游failover無影響,免運維等優勢,客戶滿意度非常高。
2)菜鳥智慧物流引擎原來採用Flink+HBase+OLAP的方案,該架構資料匯入時間長、資源浪費、資料孤島等問題嚴重嚴重困擾了業務同學,採用Hologres後,整個鏈路2億記錄資料處理速度端到端最佳化到3分鐘,開發效率大幅提升,整體硬體成本下降60%。
3)阿里巴巴客戶體驗事業部(CCO)之前使用的DataHub+Flink+OLAP+Lindorm數倉方案,存在任務重複建設、資料儲存冗餘、元資料管理、加工鏈路複雜等痛點。而今年雙11,Hologres助力CCO構建集實時化、自助化、系統化於一體的使用者體驗實時數倉,完美助力雙11場景,支援上千+服務大屏,削峰30%,整體節約成本近30%。Flink實時寫入TPS峰值100w+/s,寫入延遲穩定500us內,雙11當天查詢latency平均142ms,99.99%的查詢在200ms以內。
基於ELK的低成本實時日誌監控分析我們的實時資料除了儲存在大資料引擎中,還有很多非結構化的日誌資料,透過阿里雲的Elasticsearch,用全託管的方式提供低成本的冷熱儲存方案,輕鬆助力企業搭建統一的雲上全觀測運維監控平臺,實現海量資料的實時監控分析,提高自動化運維管理效率。
企業大資料IT運維經歷了從單純的運維工具到運維平臺,再到自動化運維和故障預防式運維,到現在朝著智慧化運維的方向進化。但現有的大資料運維分析手段依舊存在著原子工具繁多,上手成本高、工具之間的銜接困難,Monitoring(監控)、Logging(日誌)、Tracing(定位追蹤)無法互相依存發揮更大價值、真實業務中收益完全取決於使用者的架構能力等明顯問題。全觀測場景下運維監控的痛點都是趨同的,比如日誌/指標獲取手段不一,獲取成本高、日誌/指標格式化挑戰大、運維伸縮能力,峰值穩定性、海量資料長週期儲存成本高、時序系統異常分析困難,日誌分析工具檢索效能瓶頸、可擴充套件性需求高等。為解決這些問題,Elasticsearch應運而生。開源Elasticsearch是一個基於Lucene的實時分散式的搜尋與分析引擎,遵從Apache開源條款。它提供了一個分散式服務,可以提供快速的近乎於準實時的儲存、查詢和分析超大資料集。因其查詢速度快、使用簡單,通常被用來構建複雜查詢特性。
Elasticsearch構建在Elastic Stack開源生態矩陣中,包括Beats(輕量級資料採集工具)、Logstash(收集、過濾、傳輸資料的工具)、Elasticsearch、Kibana(靈活的視覺化工具)。Elastic Stack的能力基本解決了全觀測場景下的6個痛點:1)Beats獲取日誌/指標,提供支援Autodiscover的Beats Agent,統一收集各類資料2)擁有豐富的格式化日誌/指標手段,包括各個開源軟體、網路格式的日誌/指標採模板,無需格式化,擁有實時資料加工處理的擴充套件元件,提供豐富的轉化UDF/Plugin3)高穩定性保證:基於分散式架構,保證叢集的基礎吞吐和效能,跨機房部署、同城容災、場景化核心最佳化等4)低成本:阿里雲ElasticStack提供熱-溫-冷-凍結四層資料儲存方式,使用特殊的儲存壓縮功能,大幅降低儲存成本。5)提供日誌分析、監控、Tracing一站式能力,針對時序場景深入最佳化引擎,保證時序日誌監控和分析的效能。6)擴充套件性:基於分散式架構,以及靈活開放的RestAPI和Plugin框架,背後的開源社群也在為全新的技術棧提供豐富的對接手段
在此開源生態矩陣之上構建的ELK可以實現日誌、指標、APM、業務資料在一個平臺統一分析,建立統一的視覺化檢視、對齊時間、過濾條件、統一的基於規則的監控和告警、統一的機器學習的智慧監控和告警。可以對接Spark、Flink等開源處理工具進行更多格式化統一,最後儲存在Elasticsearch上提供給Kibana進行資料視覺化監控告警,透過關聯分析和機器學習去充分利用分散在整個系統各層的資料,更好的發揮一些資料的價值。
Elasticsearch背後的商業公司Elastic和阿里雲於2017年開始戰略合作,在阿里雲上提供全託管Elastic Stack服務,100%相容開源,免費提供X-Pack商業外掛,即開即用,按需付費。同時深入功能與核心效能最佳化,提供更豐富的分析檢索能力,更安全、高可用服務。
相比開源自建,Elasticsearch有開箱即用免運維的優勢,企業可以零成本遷移上雲、同時擁有更強的功能與效能、TCO預估成本僅為自建的75%。
穩定性方面,流量洪峰到來時,阿里雲Elasticsearch自研限流Qos外掛,實現索引級別的讀寫流控,當單個索引查詢/寫入壓力過大時,對指定索引,按照業務的優先順序進行適當的降級,將流量控制在合適範圍內。
成本上,阿里雲ES提供全託管的彈性伸縮運維能力,避免低峰資源浪費,可透過購買彈性資料節點、控制檯配置定時擴縮容、根據業務流量動態擴縮容等方式實現。另外,阿里雲Elasticsearch日誌增強版將計算儲存分離,使用 NFS 共享儲存作為節點底層儲存,利用主副分片,主分片可讀可寫,副分片只讀的方式,實現了儲存成本節約100%、寫入效能提升100%、秒級彈性擴縮容的收益。
阿里雲將於2021年1月推出阿里雲Elasticsearch時序寫入Serverless版,可大幅降低時序/日誌場景使用成本。使用者將無須關注ES叢集寫入資源與寫入壓力,業務請求發生變化時,由雲端Serverless調配物理資源,按需使用,按量付費,超強彈性擴容能力,提供低成本的本地型計算和儲存節點,降低資料儲存成本。
在業務層面,好未來(前身學而思)作為Elasticsearch的阿里雲標杆客戶,直播雲業務支撐著百萬人線上課堂,支援師生互動,承諾不卡頓並支援500ms低延遲高畫質畫質。但是隨著監控指標越來越多,直播質量實時性保障困難。為保障客戶使用體驗,好未來還需要對一個大池子中的資料進行細粒度的資料許可權分析,並且應對教育行業寒暑假高流量,強波動的情況。
Elasticsearch為好未來提供了豐富異構資料來源採集能力、模版化的日誌解析處理能力、精確到欄位級別的資料許可權分割能力,支援使用者靈活自定義許可權體系,與企業自有許可權體系對接打通,以及平滑的伸縮功能,叢集熱變更,對服務0影響等能力,滿足客戶在大流量場景下的實時直播質量監控與穩定性保障。
使用阿里雲Databricks資料洞察構建Hadoop生態的批流一體實時數倉除了Hologres+Flink構建實時數倉,很多公司正在使用Hadoop生態引擎構建大資料分析平臺,並且已經在成熟地使用離線資料倉庫。阿里雲Databricks資料洞察可以基於Hadoop生態構建批流一體的實時數倉,對企業現有架構進行升級,滿足實時分析決策的要求。
企業基於Hadoop生態構建大資料平臺是總有些無法繞開的問題,比如:1)想對作業調優,但是不懂核心,技術門檻高、運維人員缺乏2)叢集維護成本高、隨著時間的推移,HDFS上的資料儲存成本越來越高3)需要同時處理流式資料和批資料,技術架構複雜,維護難,BUG多4)對資料有增刪改需求,大資料下難以提供事務性保障5)資料工程師和資料分析師有各自的環境,難以共享,協同工作。而企業對應的解決方案基本是:購買專家服務/直接新增計算資源、使用全託管的雲計算服務、多引擎協同,一個處理流,一個處理批等方式,而這些方案通常需要多個產品來聯合完成。
Databricks資料洞察在ETL和資料科學中有非常多的優勢,比較顯著的包括效能上跑標準測試集較開源最高有50倍提升、使用通用的資料儲存格式Parquet,可擴充套件性高,並且支援客戶自定義部署,滿足定製化需求、使用企業級Spark,完美相容開源Spark,遷移基本不需要API級別的修改、提供Z-Order最佳化,讀取資料量減少95%,20倍效能提升、常用表和查詢快取,30倍效能提升、PB級可擴充套件性、提供互動協作的Notebook,可以滿足資料工程師和科學家的編輯作業/共享結果的需求、將大資料和AI統一到一個平臺,底層共享資料。架構上Databricks是Delta架構下的資料湖分析,也是批流一體的實時數倉。
Databricks資料洞察已經開始為各行各業提供大資料實時分析與決策能力,在金融行業,企業需要利用資料和ML(Machine Learning)實現消費者移動應用app的產品快速迭代,去吸引更多的客戶。Databricks的notebook提供的資料共享能力和流批一體的資料架構,滿足了客戶處理和識別數百萬使用者的流式和批式資料的需求,並且介面統一。客戶APP參與度提高了4.5倍、資料處理事件從6小時縮短至6秒、用一個數據湖代替了原有的14+個數據庫,效能大幅提升。在新零售行業,為了保障企業供應鏈資料實時採集、加速處理資料,為實時決策提供保障(快速檢測問題,減少經濟損失)。使用Databricks構建實時數倉後,資料延遲從2小時降低到15秒,並且由於資料鏈路精簡,業務程式碼量也相應減少:Python程式碼從565行減少到317行,YML配置從252行減少到23行。
大資料實時分析與決策是當下比較火熱的話題,企業希望技術能更快速地響應業務需求,阿里雲也希望透過產品化的能力,幫助企業更快更好的使用資料,及時響應企業的資料需求。
原文連結:https://developer.aliyun.com/article/780429