對比解讀五種主流大數據架構的數據分析能力 - 大數據_CIO時代網...

2021-01-11 CIO時代網

  數據分析工作雖然隱藏在業務系統背後,但是具有非常重要的作用,數據分析的結果對決策、對業務發展有著舉足輕重的作用。

  隨著大數據技術的發展,數據挖掘、數據探索等專有名詞的曝光度越來越高,但是在類似於Hadoop系列的大數據分析系統大行其道之前,數據分析工作已經歷了長足的發展,尤其是以BI系統為主的數據分析,已經有了非常成熟和穩定的技術方案和生態系統,對於BI系統來說,大概的架構圖如下:

  可以看到在BI系統裡面,核心的模塊是Cube。Cube是一個更高層的業務模型抽象,在Cube之上可以進行多種操作,例如上鑽、下鑽、切片等操作。

  大部分BI系統都基於關係型資料庫,而關係型資料庫使用SQL語句進行操作,但是SQL在多維操作和分析的表示能力上相對較弱,所以Cube有自己獨有的查詢語言MDX。

  MDX表達式具有更強的多維表現能力,因此以Cube為核心的分析系統基本佔據著數據統計分析的半壁江山,大多數的資料庫服務廠商直接提供BI套裝軟體服務,輕易便可搭建出一套OLAP分析系統,不過BI的問題也隨著時間的推移逐漸暴露出來:

  BI系統更多以分析業務數據產生的密度高、價值高的結構化數據為主,對於非結構化和半結構化數據的處理非常乏力。例如圖片、文本、音頻的存儲、分析。

  由於數據倉庫為結構化存儲,當數據從其它系統進入數據倉庫這個東西,我們通常叫做ETL過程,ETL動作和業務進行了強綁定,通常需要一個專門的ETL團隊去和業務做銜接,決定如何進行數據的清洗和轉換。

  隨著異構數據源的增加,例如如果存在視頻、文本、圖片等數據源,要解析數據內容進入數據倉庫,則需要非常複雜的ETL程序,從而導致ETL變得過於龐大和臃腫。

  當數據量過大的時候,性能會成為瓶頸,在TB/PB級別的數據量上表現出明顯的吃力。

  資料庫的範式等約束規則,著力於解決數據冗餘的問題,是為了保障數據的一致性。但是對於數據倉庫來說,我們並不需要對數據做修改和一致性的保障,原則上來說,數據倉庫的原始數據都是只讀的,所以這些約束反而會成為影響性能的因素。

  ETL動作對數據的預先假設和處理導致機器學習部分獲取到的數據為假設後的數據,因此效果不理想。例如,如果需要使用數據倉庫進行異常數據的挖掘,那麼在數據入庫經過ETL的時候就需要明確定義需要提取的特徵數據,否則無法結構化入庫,然而大多數情況是需要基於異構數據才能提取出特徵。

  在一系列的問題下,以Hadoop體系為首的大數據分析平臺逐漸表現出優異性,圍繞Hadoop體系的生態圈也不斷變大,對於Hadoop系統來說,從根本上解決了傳統數據倉庫瓶頸的問題,但是也帶來一系列的新問題:

  從數據倉庫升級到大數據架構,是不具備平滑演進的,基本等於推翻重做;

  大數據下的分布式存儲強調數據的只讀性質,所以類似於Hive、HDFS這些存儲方式都不支持update,HDFS的write操作也不支持並行,這些特性導致其具有一定的局限性。

  基於大數據架構的數據分析平臺側重於從以下幾個維度去解決傳統數據倉庫做數據分析面臨的瓶頸:

  分布式計算:分布式計算的思路是讓多個節點並行計算,並且強調數據本地性,儘可能的減少數據的傳輸,例如Spark通過RDD的形式來表現數據的計算邏輯,可以在RDD上做一系列的優化,來減少數據的傳輸。

  分布式存儲:所謂的分布式存儲,指的是將一個大文件拆成N份,每一份獨立的放到一臺機器上,這裡就涉及到文件的副本、分片以及管理等操作,分布式存儲主要優化的動作都在這一塊。

  檢索和存儲的結合:在早期的大數據組件中,存儲和計算相對比較單一,但是目前更多的方向是在存儲上做更多的手腳,讓查詢和計算更加高效,對於計算來說高效不外乎就是查找數據快、讀取數據快,所以目前的存儲不單單的存儲數據內容,同時會添加很多元信息,例如索引信息。像類似於parquet和carbondata都是這樣的思想。

  總的來說,目前圍繞Hadoop體系的大數據架構大概有以下幾種:

  傳統大數據架構

  之所以叫傳統大數據架構,是因為其定位是為了解決傳統BI的問題。簡單來說,數據分析的業務沒有發生任何變化,但是因為數據量、性能等問題導致系統無法正常使用,需要進行升級改造,那麼此類架構便是為了解決這個問題。可以看到,其依然保留了ETL的動作,將數據經過ETL動作進入數據存儲。

  優點:簡單、易懂,對於BI系統來說,基本思想沒有發生變化,變化的僅僅是技術選型,用大數據架構替換掉BI的組件。

  缺點:對於大數據來說,沒有BI下如此完備的Cube架構,雖然目前有Kylin,但是Lylin的局限性非常明顯,遠遠沒有BI下Cube的靈活度和穩定度,因此對業務支撐的靈活度不夠,所以對於存在大量報表或複雜鑽取的場景,需要太多的手工定製化,同時該架構依舊以批處理為主,缺乏實時的支撐。

  適用場景:數據分析需求依舊以BI場景為主,但是因為數據量、性能等問題無法滿足日常使用。

  流式架構

  在傳統大數據架構的基礎上,流式架構非常激進,直接拔掉了批處理,數據全程以流的形式處理,所以在數據接入端沒有了ETL,轉而替換為數據通道。經過流處理加工後的數據,以消息的形式直接推送給了消費者。雖然有一個存儲部分,但是該存儲更多以窗口的形式進行存儲,所以該存儲並非發生在數據湖,而是在外圍系統。

  優點:沒有臃腫的ETL過程,數據的實效性非常高。

  缺點:對於流式架構來說,不存在批處理,因此對於數據的重播和歷史統計無法很好的支撐。對於離線分析僅僅支撐窗口之內的分析。

  適用場景:預警、監控、對數據有有效期要求的情況。

  Lambda架構

  Lambda架構算是大數據系統裡面舉足輕重的架構,大多數架構基本都是Lambda架構或者基於其變種的架構。

  Lambda的數據通道分為兩條分支:實時流和離線。實時流依照流式架構,保障了其實時性,而離線則以批處理方式為主,保障了最終一致性。

  什麼意思呢?流式通道處理為保障實效性更多的以增量計算為主輔助參考,而批處理層則對數據進行全量運算,保障其最終的一致性。因此,Lambda最外層有一個實時層和離線層合併的動作,此動作是Lambda裡非常重要的一個動作,大概的合併思路如下:

  優點:既有實時又有離線,對於數據分析場景涵蓋的非常到位。

  缺點:離線層和實時流雖然面臨的場景不相同,但是其內部處理的邏輯卻是相同,因此有大量冗餘和重複的模塊存在。

  適用場景:同時存在實時和離線需求的情況。

  Kappa架構

  Kappa架構在Lambda的基礎上進行了優化,將實時和流部分進行了合併,將數據通道以消息隊列進行替代。因此對於Kappa架構來說,依舊以流處理為主,但是數據卻在數據湖層面進行了存儲,當需要進行離線分析或者再次計算的時候,則將數據湖的數據再次經過消息隊列重播一次則可。

  優點:Kappa架構解決了Lambda架構裡面的冗餘部分,以數據可重播的超凡脫俗的思想進行了設計,整個架構非常簡潔。

  缺點:雖然Kappa架構看起來簡潔,但是施難度相對較高,尤其是對於數據重播部分。

  適用場景:和Lambda類似,該架構是針對Lambda的優化。

  Unifield架構

  以上的種種架構都圍繞海量數據處理為主,Unifield架構則更激進,將機器學習和數據處理揉為一體,從核心上來說,Unifield依舊以Lambda為主,不過對其進行了改造,在流處理層新增了機器學習層。可以看到數據在經過數據通道進入數據湖後,新增了模型訓練部分,並且將其在流式層進行使用。同時流式層不單使用模型,也包含著對模型的持續訓練。

  優點:Unifield架構提供了一套數據分析和機器學習結合的架構方案,非常好的解決了機器學習如何與數據平臺進行結合的問題。

  缺點:Unifield架構實施複雜度更高,對於機器學習架構來說,從軟體包到硬體部署都和數據分析平臺有著非常大的差別,因此在實施過程中的難度係數更高。

  適用場景:有著大量數據需要分析,同時對機器學習方便又有著非常大的需求或者有規劃的情況。

  總結

  以上為目前數據處理領域使用較多的幾種架構,當然還有非常多其他架構,不過其思想都會或多或少的類似。數據領域和機器學習領域會持續發展,以上幾種思想或許終究會變得過時,我們只能與時俱進,不斷更新自己的知識庫。

第三十屆CIO班招生 法國布雷斯特商學院碩士班招生 北達軟EXIN網絡空間與IT安全基礎認證培訓 北達軟EXIN DevOps Professional認證培訓

責編:zhangxuefeng

相關焦點

  • 大數據時代:十大最熱門的大數據技術 - 大數據_CIO時代網 - CIO...
    隨著大數據分析市場快速滲透到各行各業,哪些大數據技術是剛需?哪些技術有極大的潛在價值?根據弗雷斯特研究公司發布的指數,這裡給出最熱的十個大數據技術。   1、預測分析   預測分析是一種統計或數據挖掘解決方案,包含可在結構化和非結構化數據中使用以確定未來結果的算法和技術。
  • 大數據分析與數據分析的根本區別在哪裡?
    是需要新處理模式才能具有更強的決策力、洞察發現力和流程優化能力的海量、高增長率和多樣化的信息資產。在維克託·邁爾-舍恩伯格及肯尼斯·庫克耶編寫的《大數據時代》 中大數據分析指不用隨機分析法(抽樣調查)這樣的捷徑,而採用所有數據進行分析處理,因此不用考慮數據的分布狀態(抽樣數據是需要考慮樣本分布是否有偏,是否與總體一致)也不用考慮假設檢驗,這點也是大數據分析與一般數據分析的一個區別。
  • 數據科學研究的現狀與趨勢全解 - 大數據_CIO時代網 - CIO時代—新...
    目前,大數據已受到各學科領域的高度關注,成為包括計算機科學和統計學在內的多個學科領域的新研究方向,表現出不同專業領域中的數據研究相互高度融合的趨勢,進而即將獨立出一門新興學科——數據科學。同時,大數據研究中仍存在一些誤區或曲解,如片面追求數據規模、過於強調計算架構和算法、過度依賴分析工具、忽視數據重用、混淆數據科學與大數據的概念以及全盤否定大數據等。
  • 12個頂級大數據工具 - 大數據_CIO時代網 - CIO時代—新技術、新...
    在大數據技術作為概念和業務戰略出現的十年中,湧現了執行各種任務和流程的數千種工具。而推出這些工具的提供商都承諾可以為企業節省時間和成本,並發現能夠讓企業獲利的商業洞察力。顯然,大數據分析工具的市場正在不斷增長。  許多大數據分析工具最初像大數據軟體框架Hadoop一樣都是開源項目,但商業實體迅速湧現,為開源產品提供了新工具或商業的支持和開發。
  • 大數據下的技術運營:數據採集系統設計與實現 - 大數據_CIO時代網...
    監控系統是整個IT架構中的重中之重,小到故障排查、問題定位,大到業務預測、運營管理,都離不開監控系統,可以說一個穩定、健康的IT架構中必然會有一個可信賴的監控系統,而一個監控系統的基石則是一個穩定而健壯的數據採集系統。
  • 大數據時代:你用什麼來做數據分析
    數據規模的持續增長早已是行業定律,據了解,網際網路上每一秒鐘傳輸的視頻,需要花費一個人5年的時間才能看完。可見數據量之大,數據增長之快已經越來越超乎我們的想像。商業決策也開始越來越依賴數據的分析,如此,建立正確的數據聯繫,形成準確的數據分析就成為抓住時代機遇的關鍵。  近日,筆者從外媒看到幾款實用的大數據模型工具,部分筆者親測好用哦!
  • 數據湖 VS 數據倉庫之爭?阿里提出大數據架構新概念:湖倉一體
    從宏觀層面觀察其中的發展規律,可以高度概括成如下五個方面:1. 數據保持高速增長- 從5V核心要素看,大數據領域保持高速增長。阿里巴巴經濟體,作為一個重度使用並著力發展大數據領域的公司,過去5年數據規模保持高速增長(年化60%-80%),增速在可見的未來繼續保持。對於新興企業,大數據領域增長超過年200%。2.
  • 中傳影視王鑫:大數據在傳媒領域的應用 - 學院活動_CIO時代網...
    搶沙發 2017-05-11 17:11:01  來源:CIO時代網 摘要:中國傳媒大學信息工程學院副教授、兼任中傳影視大數據研究院技術負責人、中國商業聯合會數據分析專業委員會特聘講師王鑫作為本期活動的特邀講師
  • 五種常用大數據分析方法
    在數據分析中,常用到的分3類:時間對比、空間對比以及標準對比。  時間對比:  最常用的就是同比和環比,通過時間周期的數據對比,了解目前數據水平的高低  同比:某個周期的時段與上一個周期的相同時段比較,如今年的6月比去年的6月,本周的周一比上周的周一等等。
  • 大數據分析學習之路
    一、大數據分析的五個基本方面 1,可視化分析大數據分析的使用者有大數據分析專家,同時還有普通用戶,但是他們二者對於大數據分析最基本的要求就是可視化分析,因為可視化分析能夠直觀的呈現大數據特點
  • 數據時代,洞見數據世界!海大教授直播解讀新增專業:數據科學與大...
    數據時代,洞見數據世界!海大教授直播解讀新增專業:數據科學與大數據技術!上海海洋大學信息學院副院長袁紅春教授將為大家帶來2020高校招生季主題直播:數據時代,洞見數據世界,走近數據科學與大數據技術專業。在精彩的直播開始前,先讓我們來了解一下主講老師和數據科學與大數據技術專業吧!
  • 思科朱立新談大數據時代數據中心變革
    【IT168 專訪】目前雲計算、虛擬化和大數據等熱門技術紛紛落地,數據中心網絡的建設也在不斷變化。數據中心流量和帶寬的指數級增長,已經遠遠超出了人們對傳統網絡的想像。為了滿足新形勢下數據中心的建設要求,位於核心位置的交換機系統成為關鍵。  數據中心網絡和乙太網標準的發展,都對新一代核心交換機提出了更高的要求。
  • 大數據時代,數據分析師的報考條件是什麼?
    隨著網際網路的迅速發展,人已經進入大數據時代,在大數據時代,數據分析、數據挖掘工作面臨著機遇與挑戰,特別是近幾年,大數據已逐漸走進商業、政府、科研、教育、醫療等各行業。同時,也給商業、政府、科研、教育、醫療等各行業帶來了不小的危機感。
  • 大數據的力量來自「大成智慧」資訊時代大數據的再認識 | 網際網路...
    首先從「資訊時代新階段」、數據文化和認識論的高度闡述了對大數據的理解;接著通過對驅動效益和大成智慧的解釋,探討了如何正確認識大數據的價值和效益,並從複雜性的角度分析了大數據研究和應用面臨的挑戰;最後對發展大數據應避免的誤區提出幾點看法。
  • 乾貨: 五種常見數據複製技術詳解
    今天,我們就來聊聊5種常見的數據複製技術。複製(Replication)是將一組數據從一個數據源拷貝到一個或多個數據源的技術。根據數據複製技術在不同系統層的應用,可以分為如下五種:1、基於主機的數據複製技術基於主機的數據複製是通過磁碟卷的鏡像或複製進行的,業務進行在主機的卷管理器層,對硬體設備尤其是存儲設備的限制小
  • 大數據時代可視化新聞的特點及發展趨勢
    摘要:大數據時代對新聞生產的改變,不但是讓報導擁有了海量的數據,關鍵在於數據的「廣度」和「深度」,讓新聞報導的方式也發生了深刻的改變。可視化新聞就是隨著數據在新聞中的廣泛運用出現並發展起來的。從最初英美主流媒體率先實踐,到如今全球各國媒體重視發展讓其擁有廣闊應用前景,本文總結歸納了可視化新聞一路走來的發展特點和發展趨勢。這將有利於探索大數據時代對新聞報導的影響,以及未來新聞生產方式變革的合適途徑。
  • 怎樣提升數據分析能力,數據分析的正確步驟
    在這個大數據時代,數據分析能力在職場中顯得尤為重要,不會數據分析基本就是一塊廢柴,在職場中很難生存,但要想學好數據分析,並沒有那麼容易,很多人都是下定決心入門學習,可是又不知道從哪開始,複雜的算法、龐大的數據、眼花繚亂的代碼……最終還是止步於頭腦鬥爭,無法付諸實際行動。但只要你克服了以下6大難題,數據分析能力蹭蹭往上漲。
  • 如何提升數據分析能力,數據分析的正確步驟
    在這個大數據時代,數據分析能力在職場中顯得尤為重要,不會數據分析基本就是一塊廢柴,在職場中很難生存,但要想學好數據分析,並沒有那麼容易,很多人都是下定決心入門學習,可是又不知道從哪開始,複雜的算法、龐大的數據、眼花繚亂的代碼……最終還是止步於頭腦鬥爭,無法付諸實際行動。但只要你克服了以下6大難題,數據分析能力蹭蹭往上漲。1.很難獲得用戶操作行為完整日誌。
  • 民生銀行大數據體系架構設計與演進
    目前每天採集的數據超過千萬條,累積的行為數據已經達到數十億條,通過大數據分析技術,對採集到的數據進行了報表統計和分析,已得到五類的統計報表數據,包括應用中用戶的新增數目、活躍數目、累計數目及用戶的設備分布、地域分布、作業系統、留存情況、用戶瀏覽時長統計、點擊事件統計及應用的錯誤統計等,目前進一步的在推動行為數據對營銷和風控的實時數據補充。
  • 大數據開發和大數據分析有什麼不同?
    大數據分析工程師和大數據開發工程師分別能做什麼?通俗解釋開發和分析非要把他倆分開的話,一個是偏向於數據,一個偏向於工程。好比要炒個菜,工程師是燒火、墊勺的那個,偏向於工具的使用。分析師是放調理、掌握火候的那個,偏向菜怎麼做好吃。數據影響生活數據越來越多的影響並塑造著那些我們每天都要交互的系統。