3月1日,【虹科云課堂】數據管理與可視化解決方案第一期課程圓滿結束,感謝大家的觀看與支持。虹小科為大家整理了課后筆記,請查收
導語
虹科云課堂
企業應用程序的運行就像一輛行駛中的汽車,當所有的組件都按照預期的方式工作時,它就會出現速度與性能的完美結合。如果它其中的一個組件出現故障,應用程序的運行就會受到影響,就像汽車突然爆胎或者熄火一樣,業務的運行就會不正常。比如說網站無法訪問、服務器因為負載過高停機了、數據分析報告中數據集的輸出是錯誤的,可能被人篡改了等等。現如今大多數企業使用是不透明的數據解決方案,然而缺乏透明度會導致隱藏數據問題,并可能影響數據質量和應用程序性能。
那么我們要怎么樣才能保證應用程序正常運行呢?當然是在這些問題發生之前解決問題,也就是需要預測、預防問題的發生,那么我們應該怎么做呢,答案就是使用使用多維的數據可觀察性解決方案。
以下是虹科云科技事業部技術工程師夏雨的直播報告:《什么是數據可觀察性》。
本文圍繞3部分展開
虹科云課堂
1、什么是數據可觀察性?
2、企業為什么需要數據可觀察性?
3、虹科數據可觀察性方案
01
什么是數據可觀察性
虹科云課堂
講概念之前說一下現代數據基礎設施存在的幾個問題,同時也是我們的產品能夠解決的問題,我們知道,所有企業都面臨著大量與數據相關的問題。一個常見的問題是,好的數據可能變成壞的。那是為什么呢?
首先,單個數據生態系統中的數據源越來越多。例如,在過去,使用基本的ETL或CDC工具將數據從數據庫攝取到數據倉庫,有時會對數據進行轉換、清理和質量測試。它被存儲并傳輸到一個簡單的應用程序,該應用程序在數據上運行一個例程,以生成一個報告或在儀表板中使用。但是現在,除了數據庫之外,數據還來自許多其他來源,包括api、文件、社交媒體、日志等,這使得攝取過程更加復雜。更重要的是,更多的數據是動態的。現代應用程序可能使用事件數據(例如,客戶剛剛進行査詢或開始購買),而不是使用數據庫中未更改的數據(例如,客戶的帳戶信息)。這種變化會影響數據轉換、存儲、交付和使用。并且在過去,沒有一種工具能夠看到數據管道的每個步驟,但是這些數據來源中的任何一個都可能以意想不到的方式發生變化,從數據創建攝取到最終使用的所有接觸點中,數據在其生命周期的不同步驟中被破壞、刪除或誤用的方式有很多。
數據質量無法保證,那么數據團隊就會花大量時間來處理數據的問題,而且不良數據可能會對公司產生重大的業務影響。質量差的數據通常被認為是運營混亂、分析不準確和商業戰略構思不周的根源。數據質量問題可能導致的經濟損失示例包括產品運送到錯誤的客戶地址時增加的費用、由于錯誤或不完整的客戶記錄而失去銷售機會,以及因財務或監管合規報告不當而被罰款。
其次,因為數據需要經過復雜的轉換之后才能被處理,你正在從數百(或數千)個數據源中獲取數據,這些數據源可能有也可能沒有 API,所有數據源都具有不同的數據模型,而且一個源系統中產生的數據可能為多個數據管道提供數據,而這些管道可能為其他管道或依賴其輸出的應用程序提供數據。當數據從一個流程流向另一個流程時,它會不斷地被轉換、構建和聚合,以保證數據可用。還有系統使用的每種工具可能具有不同的格式來讀取和解釋數據。不同的工具也可能具有不同的字段值名稱或期望日志數據按特定順序排列等等。更糟糕的是,如果這些格式發生根本性的變化,那么就會導致下游失敗,如果代碼繼續運行,可能產生不正確的結果,或者發生崩潰。這種崩潰通常會對下游系統產生級聯效應,或者說多米諾骨牌效應,它們會一個接著一個出現問題。
第三個問題是隨著企業轉型為數據驅動的數字企業,低質量和不可靠數據的成本將飆升。數據將被要求支持更多的商業模式、內部流程,并將推動關鍵的商業決策。因此,對數據的訪問至關重要,確保數據的可靠性成為絕對關鍵的任務。傳統觀點認為,數據質量監控工具是解決方案。所以,市場上充斥著這些解決方案。然而,隨著向分布式、以云為中心的數據基礎設施的轉變,數據質量監控工具迅速過時。它們是為前一代應用程序環境而設計的,無法擴展,管理起來太費力,在診斷和修復數據質量問題的根本原因方面太慢,也不可能去預測未發生的問題。在缺乏主動確保數據可靠性的工具的情況下,隨著數據的供應,不良數據和不可靠數據的事件增加。數據質量監控工具及其被動、手動和幾十年不變的數據質量方法無法應對當今數據高度分布、快速移動甚至變化更快的環境。他們讓數據工程師和其他數據運營團隊成員忙于日常排除故障,遭受應接不暇的告警,無法滿足他們的 SLA。數據質量和數據性能都受到影響,而數據成本則會失控。那么這個問題的解決方案是數據可觀察性,它采用全新的主動方法來解決數據質量問題,遠遠超出簡單的數據監控和警報,降低確保數據可靠性的復雜性和成本。換句話說,它是對數據復雜性問題的系統解決方案。它跨應用程序、數據和基礎架構層監控和關聯數據工作負載事件,以解決生產分析和 AI 工作負載中的問題。
最后一個就是數據管道日益復雜,數據的供應和需求激增,數據處理的多個階段以及不同數據資產之間可能存在不可見的依賴關系,使數據管道變得非常復雜,用于移動數據的技術變得更加復雜,導致團隊無法了解數據的處理方式。除此此外,每增加一層復雜性,數據停機時間就會成倍增加,數據停機時間是指你的數據不完整、錯誤、丟失或以其他方式不準確的時間段。隨著數據的移動,錯誤會不斷累積,而團隊最終往往會得到不可靠的數據。數據停機導致的后果是不可估計的,會導致公司生產力下降,客戶體驗感不佳,并且存在嚴重的合規性、財務和運營影響,可能會讓數據領導者措手不及,從而影響團隊的投資回報率和公司的底線。
處理數據停機事件不僅浪費寶貴的時間,而且使團隊遠離創收項目。數據工程團隊沒有在構建可以為客戶增加實質性價值的新產品和服務上取得進展,而是花時間調試和修復數據問題。對造成這些問題的原因缺乏了解只會讓事情變得更糟。
剛剛提到數據管道,這邊介紹一下,數據管道是從原始數據到目的地(通常是數據湖或倉庫)的過程。在整個過程中,將轉換邏輯應用于數據,以便為分析做好準備,而在目的地,將對數據進行分析,以獲得可操作的見解。最常見的數據管道形式采用批處理或實時處理。
這里有一張數據管道的圖片可以看看,架構師和數據工程師現在使用大量的工具來構建數據管道:提取、加載和轉換(ELT-Extract, Load, Transform)工具、應用程序編程接口(api)和事件流系統,如Apache Kafka。它們從應用程序、IT日志和物聯網傳感器或數據庫中獲取數據,通常為結構化、半結構化和非結構化和原始的數據。他們將首先收集這些數據,然后進行轉換、數據清洗,然后通過腳本把它存儲在數據倉庫、數據湖、NoSQL,甚至流媒體平臺中。這些數據也可能最后會被生成分析報告或者機器學習的模型或者把它進行可視化展示到頁面上等等,這一系列的操作流程下來,就比較復雜了。而且你不能保證這一系列的流程其中的操作都是正確的,因為可能數據之間存在著一些我們不可見的依賴關系,假如流程其中一個地方搞錯了,或者其中一個數據不可靠,數據質量出現問題,那么這個數據管道中的數據流就會受到影響,業務的運行可能就會不正常。
現在,數據管道與 Spark 和 Kubernetes 等復雜工具結合運行,允許數據團隊在其數據堆棧的每一層選擇最佳平臺,但所有這些引擎的組合使得難以了解不同部分的管道。此外,如果數據管道的一部分發生在黑匣子中,你知道輸入什么,知道輸出什么,但你不知道中間會發生什么。
數據運營(DataOps)工程師依靠標準工具來深入了解數據系統,但他們往往無法獲得數據的業務上下文。由于了缺失的上下文,所以他們無法得到關于數據質量問題和潛在原因的足夠信息。而且有研究表明,數據團隊將 40% 以上的時間花在數據質量問題上,而不是致力于為企業創造價值的活動。收集和分析數據的目的是創造商業價值,但沒有管道可見性,錯誤就會累積,商業價值就會被破壞。
那么應該如何提高數據準確性并防止管道中斷呢,解決以上問題的方法就是數據可觀察性,它是一種用于數據操作的方法和解決方案。指對數據、事件進行觀察、監控、跟蹤和分類以防止數據停機的方法。
企業應用程序的可觀察性越高,就越容易確定影響它的任何問題的根本原因。隨著問題的確定和修復,應用程序變得更加可靠和高效,數據系統也會越穩定。
數據可觀察性的工作原理是在數據流經復雜的數據管道時監控數據、數據流程和數據源,在數據流入系統之前,數據團隊會定義在數據、管道和基礎設施層面觀察指標。當數據流經管道時,數據可觀察性使用機器學習、高級分析和人工智能來監測和關聯所有層的成千上萬的事件。它將數據和數據系統的當前狀態與期望狀態進行比較。當沒有達到理想狀態時,數據可觀察性技術會提供反饋,因此和數據團隊可以重新獲得系統控制權,以確保及時提供可信的數據,滿足業務需求。
那么有沒有數據可觀察性到底有什么區別呢,打一個簡單的比方,比如古代寄信的過程,你把信寄出去,可能他收到了信,然而你并不知道這個信它是怎么送到的,這個過程你是不可見的,就相當于沒有數據可觀察性以前,數據的傳輸過程像在黑匣子里一樣不能被看到,但是現在你在網上買東西寄東西都是快遞的,你可以在手機上看到這個快遞的路線,經過了哪里,有沒有順利到達目的地。那么現在的數據可觀察性和這個也是一樣的,可以理解為數據可觀察性提供數據管道中端到端的可見性,你可以跟蹤事件,讓你看見數據從應用程序、服務器、數據庫經過一些復雜的流程到數據湖、存儲的過程,工具結合技術可以讓我們能夠近乎實時地識別、排除故障和解決數據問題。
那么一個好的數據可觀察性工具應該是怎么樣的呢?它應該滿足這三個層面的需求,這三層分別代表了數據可觀察性能給不同職位的人提供的需求。首先是基礎設施層,對于平臺工程師、DevOps工程師和現場可靠性工程師來說,數據可觀察性工具可以讓他們看到基礎設施的可用性,比如CPU、內存、存儲利用率,然后可以進行性能分析,對系統進行負載均衡處理,提高生產效率。其次是數據層,數據架構師和數據工程師監控需要監控數據庫和網絡應用程序;比如Apache Spark和Apache Kafka,因為它們為現代數據和分析管道提供動力,可觀察性工具就是可以幫助他們快速發現和解決問題。然后是應用程序層也可以說是業務層,BI分析師、數據科學家和業務經理需要理解性能問題的根源,傳統的應用程序性能監控(APM)工具可以識別應用程序問題,但它們不能回答與數據相關的問題,但是數據可觀察性工具就可以解決與數據有關的問題。這三層的數據它都可以進行監控。
接下來看一下數據可觀察性的構成,為了保證數據可觀察性工具是有效的,它需要具有以下功能特性:
首先是監控, 它需要提供管道或系統操作視圖的儀表板,就是提供一個UI界面控制臺讓你能掌握數據動態。
然后第二個是警報,當你的應用程序運行不穩定、服務器負載過高或者出現其他故障或異常時,它會通過一些方式去給你告警。能夠讓你及時處理,當然,它也能根據你這個警報的級別去通知,級別比較低的問題它會自動幫你處理。
第三個是跟蹤,你可以設置和跟蹤特定的事件,它就會被標記,然后你就能看它的運行流程。跟蹤顯示了應用程序的不同部分如何執行它們的工作。跟蹤還顯示可能發生潛在問題的位置。
第四個是比較,就是說它會比較這個應用程序或者這個業務它運行的周期,隨著時間的推移進行監控比較,顯示出它的一個變化趨勢,如果今天的時間比昨天多4倍,那可能你的系統哪里出現問題,那么它就發送異常警報,并且幫你預測問題可能會出現在哪里。
第五個是分析,它會自適應企業的數據管道,和數據健康狀況進行自動檢查,它有自己的一些規則去判斷數據質量,你也可以設定自定義的規則去判斷數據是否正確。
然后是日志記錄,一個優秀的日志事件可以讓我們排除問題變得事半功倍,數據可觀察性平臺會以標準化的格式記錄事件,以后萬一系統出現什么故障,你可以查看日志文件以便更快解決問題。
最后是SLA跟蹤,它可以根據你預定義的標準去衡量數據質量和管道元數據,就會比較方便我們判斷這個服務是否達到SLA級別標準。
這個圖片很形象的展示應用性能監測(APM)與數據可觀察性的區別。APM就像他的名字一樣只限于監控應用程序層,而數據可觀察性將監控功能一直延伸到數據和基礎設施層。
數據可觀察性可以通過預測、識別、確定問題處理的優先級并幫助解決數據質量問題來減少數據停機時間。并且它可以改進對數據管道的控制,創建更好的 SLA,并為數據團隊提供了預測建議,這些建議可用于做出更好的數據驅動業務決策。數據可觀察性解決方案在兩個方面提供了優于 APM 工具的明顯優勢:
首先它有更好的數據層可觀察性,可以讓數據運營(DataOps)團隊可以更好地控制數據管道。
其次是它有改進的基礎設施層可觀察性,可以讓信息技術運營(ITOps )團隊可以更好地控制基礎設施資源。
企業為什么需要數據可觀察性
虹科云課堂
02
對于基礎設施層,數據可觀察性工具可以幫助DevOps工程師進行性能管理、基礎設施精簡和容量規劃。借助高端數據可觀察性平臺,ITOps (信息技術運營)團隊可以在 APM 無法提供的粒度級別上監控關鍵基礎設施層指標,例如內存可用性、CPU 存儲消耗和集群節點狀態,因此數據可觀察性工具可以比任何其他類型的解決方案更快地排除故障并解決數據擁塞和中斷問題。同時也可以通過查看生成的數據,優化基礎設施,幫助你降低基礎設施成本。例如,通過識別瓶頸來減少過度配置或提高效率和吞吐量。
對于數據層,數據可觀察性可幫助數據團隊管理管道性能和數據質量,并隨著時間的推移提高體系結構效率和有效性。DataOps (數據運營)團隊可以通過自動檢查數據傳輸的準確性、完整性和一致性來確保高質量的數據標準。這些質量檢查將構建更健康的數據管道。數據工程師可以自動收集數千個管道事件,將它們關聯起來,識別異常或峰值,并使用這些信息來預測、預防、排除故障和修復問題。
對于應用程序層,業務負責人可以與 BI 分析師合作,創建準確的容量估計以及滿足業務目標需求的更明智的 SLA(服務級別協議),提高最終用戶滿意度:通過減少發現問題的時間、改進的應用程序正常運行時間和性能,將減少客戶流失、提高回報率,同時也可以做成本效益分析和戰略決策。
03
虹科數據可觀察性解決方案
虹科云課堂
接下來介紹一下我們虹科的數據可觀察性解決方案,它是一個由三部分產品組成的集成套件,為當今復雜的數據操作提供全面的可見性、控制和優化功能。作為中立的多平臺數據可觀察性解決方案,我們的方案可以使數據運營團隊能夠從單個控制臺有效地管理其整個數據基礎架構,最大限度地提高數據工程團隊的生產力,以及數據模型和分析應用程序的性能和正常運行時間。其機器學習功能可幫助企業預測和預防其數據管道的潛在問題,最大限度地減少停機時間并使其能夠滿足其 SLA/SLO。
解決方案包括三個產品:Pulse、Torch、Flow。Pulse 用于監控實時計算性能和基礎設施使用情況,而 Torch和Flow 通過幫助可視化數據管道來提供數據可靠性和質量。我們的產品了提供數據可觀察性的企業解決方案。
pulse是一個數據可觀察性工具,用來監控數據處理性能,預防問題發生,擴展規模,優化資源;為混合數據環境和由多種技術組成的管道提供全面的可見性。它觀察混合數據環境,優化數據系統的可靠性、性能和成本。它的關鍵詞是基礎設施、服務、日志、指標和警報。
Torch在數據層進行數據管理,保證數據可靠性,發現數據及優化數據。通過數據管道觀察數據流,優化數據的可靠性、質量和使用,它的關鍵詞是機器學習模型、算法、數據質量、可靠性、SQL 等等。
Flow在業務層提供數據管道可視化,可以用來做進程管理、成本效益分析、決策設計等。它的關鍵詞是管道、ETL 管道、計算、成本、SLA 等內容。
最后我們看一下產品的應用案例,Phonepe是沃爾瑪旗下一家大型的移動支付公司,相當于印度的支付寶,它的用戶是全印度3.5億多消費者。Phonepe使用各種開源數據技術去讓數以億計的用戶去實現實時支付和現金轉移,使用的技術比如HBase、HDFS、Kfaka、Spark等等,但是當計算量達到一定級別或并發數達到一定級別后,這種架構的 CPU與磁盤子系統會容易出現瓶頸,它的基礎設施的性能無法跟上快速擴展的業務需求,用戶體驗就是用這個軟件會很卡,甚至無法使用,那么我們的產品是怎么樣解決這些問題的呢?
我們的產品為 phonepe的 Hbase、Hive和 Spark數據管道帯來了實時可視性,使 phonepe的工程師能夠從單個應用程序監控其整個數據基礎架構。 phonepe的數據可靠性團隊能夠使用 Pulse來監控其現代數據基礎設施的性能,以便能夠輕松區分基礎設施問題造成的變化。通過提高性能密集型數據工作負載計算性能的可視性, phonepe顯著提高了可靠性。最終這個公司己經能夠將其數據基礎設施順利増長20倍,從70個節點増加到2000多個節點,同時在其 Hadoop數據池中保持99.9%的可用性。Phonepe將企業數據倉庫處理時間從11.5小時縮短到6.5小時,還消除了計劃外停機,并實現了99%以上的報告自動化。幫助這個公司降低數據倉庫的成本,節省軟件許可證費用等等。可以說我們的產品效果顯著,立竿見影。
云科技事業部
虹科電子
虹科在工業、制造業領域深耕了長達20年,隨著云技術的全面發展和數字化工廠的逐步落地,虹科參與了越來越多的云主題的業務,從最初的所有數據先統一采集上云,到后續的邊緣計算再上云,到現在的全面業務優化、洞察研究、成本優化等,虹科的云科技事業部已經為行業的用戶實操并積累了豐富的解決方案和應用場景。它們包括:資源監控、安全保障、多云的互聯互通、應用和數據牽引等。虹科云科技團隊在不斷順應國家策略,從技術創新、標準制定、豐富生態、安全保障、節能減排等五個方面,不斷創造出更好的產品,幫助工業制造業的用戶實現數字化轉型、實現基于數據的降本增效。
虹科云科技工程師團隊不斷參與美國和歐洲產業內先進的專家培訓,學習和實踐創新的技術手段、操作性強的應用案例,并不斷引入到國內的項目中完成落地和推廣,這讓我們團隊充滿了自豪感與使命感,賦予了我們當今時代極大的技術價值、工作成就感。
-
數據
+關注
關注
8文章
6899瀏覽量
88842
發布評論請先 登錄
相關推薦
評論