深入淺出學習大數據:探討大數據系統基準以及科學問題!

深入淺出學習大數據:探討大數據系統基準以及科學問題!

繼續帶大家學習大數據。今天主要介紹大數據系統基準和科學問題,新朋友可以翻閱我前面的文章,跟上學習大數據的步伐。希望大家持續學習,每天關注,我會連續更新文章,讓大家系統學習和認識大數據。

一、大數據系統基準(benchmark)

1.面臨的挑戰

事務處理性能委員會(Transaction Processing Performance Council)制定的系列基準極大地促進了傳統關係型數據庫的發展和商業化。隨著大數據系統研究的逐步成熟,學術界和產業界試圖創建新的類似TPC的基準,對大數據系統的性能進行比較和評估.然而到目前為止,還沒有一個可用的標準基準.大數據系統的獨特性質對新基準的提出帶來了如下的挑戰。

深入淺出學習大數據:探討大數據系統基準以及科學問題!

•系統複雜性

大數據系統通常由多個模塊或組件組成,這些模塊有著不同的功能並耦合在一起,對整個系統建模和為所有模塊提供一個統一的框架並不容易。

•應用多樣性

一個好的基準應該反映大數據系統的典型特性,例如應用訪問模式和性能需求等.由於大數據系統的多樣性,使得提取顯著特徵非常複雜。

•數據規模

在傳統的TPC基準中,測試集通常比真實的客戶數據集大得多,因此測試結果能精確的反映真實性能。然而,大數據的數據量巨大並且不斷增長,必須考慮一種有效的方式測試具有小數據集的產品。

•系統演化

大數據增長率不斷增加,大數據系統必須不斷演化,以適應日益變化的需求,因此大數據基準也要迅速變化。

深入淺出學習大數據:探討大數據系統基準以及科學問題!

2.研究現狀

大數據基準的研究也剛剛起步,可以分為組件級別(component-level)的基準和系統級別的基準。組件級別的基準也稱為微基準(micro benchmark),用於評價獨立組件的性能;系統級基準提供端到端系統測試框架。在大數據相關組件中,數據存儲已發展成熟並可以準確地建模。因此許多微基準被提出用於評價數據存儲組件,主要可以分為三類。

•TPC基準

TPC系列基準用於評價關係型數據庫的事務性工作負荷。TCP-DS是TPC最近頒佈的支持決策制定的基準,它事實上已涉及大數據系統的一些方面。具體來說,TCP-DS能夠產生最多100 Terabytes 的結構化數據,並且通過初始化數據庫,能在單用戶和多用戶模型下執行SQL查詢。

•NoSQL基準

深入淺出學習大數據:探討大數據系統基準以及科學問題!

NoSQL數據庫能夠高效地處理半結構化和無結構數據,這對大數據集中佔較大比例的無結構數據非常適用。Yahoo開發了它的雲服務基準——YCSB,用於評價NoSQL數據庫。YCSB由產生工作負載的客戶和一個標準負載包構成,負載包覆蓋了部分性能空間,如大量讀操作負載、大量寫操作負載和掃描負載.這三種負載可針對Cassandra,HBase,PNUTs和簡單的共享MySQL等4種數據存儲系統運行.其他一些研究擴展了YCSB框架,集成了一些高級特徵,例如預分割、大容量加載和服務器方過濾等。

•Hadoop基準

深入淺出學習大數據:探討大數據系統基準以及科學問題!

Hadoop已逐漸成為大數據分析的主流框架,一些研究者試圖構建類似TPC的MapReduce基準。GridMix和PigMix是Apache的Hadoop項目中內置的兩個測試框架,可以評估Hadoop集群和Pig查詢的性能.Palvod等定義了由任務集合構成的基準,將Hadoop和其他兩種並行RDBMS系統進行了性能比較,測試結果表明了性能上的tradesoff,並認為未來的系統應該同時考慮這兩種類型的體系架構.GraySort是一個已被廣泛使用的大規模排序基準,這些基準可以看成是許多類型和大小作業的複雜迭加。通過對Facebook和Yahoo中MapReduce追蹤信息的比較和分析,Chen等開發了一個開源的統計工作負載注入器(SWIM),SWIM套件包括三個關鍵組件:真實MapReduce工作負載倉庫,生成代表性工作負載的負載合成工具,和執行歷史工作負載的負載重放工具。SWIM套件能夠獲得基於現實工作負載的性能評估,並能發現系統資源瓶頸。隨後他們在文獻中對工作負載進行了更復雜的分析。PDMiner則是一個基於大規模數據處理平臺Hadoop的並行分佈式數據挖掘工具平臺。在PDMiner中開發實現了各種並行數據挖掘算法,比如數據預處理、關聯規則分析以及分類、聚類等算法。

Ghazal等基於生產零售模型第一次提出了一個端到端的大數據基準——BigBench,由兩個主要部件構成:數據生成器和工作負載查詢規範。數據生成器可以產生結構化、半結構化和無結構數據這三種類型的原始數據;查詢規範則根據McKinsey報告中生產零售商的典型特徵,定義了查詢類型、數據處理語言和分析算法的類型.BigBench覆蓋了大數據系統的“3Vs”特性。

深入淺出學習大數據:探討大數據系統基準以及科學問題!

二、大數據科學問題

大數據系統面臨的許多挑戰需要通過後續的研究解決。在整個大數據生命週期中,從大數據平臺和處理模型到應用場景等各方面,都存在一些值得研究的方向。

•大數據基礎平臺

儘管Hadoop已成為大數據分析的主流框架,但是和發展了40餘年的RDBMS系統相比,大數據平臺還遠未成熟。首先,Hadoop需要集成實時的數據採集和傳輸機制,提供非批處理方式的快速處理機制。其次,Hadoop提供了一個簡化的用戶編程接口,隱藏了複雜後臺執行的細節,這種簡化在一定程度會降低處理性能。應該設計類似於DBMS系統的更先進的接口,從多個角度優化Hadoop性能。再次,大規模Hadoop集群由成千上萬甚至幾十萬臺服務器構成,要消耗大量的能量。Hadoop能否大範圍部署取決於其能量效率.此外,基礎平臺的研究還包括海量數據分佈式存儲管理,實時索引查詢,大數據平臺功耗,以及海量數據實時採集、傳輸和處理等問題。Hu等提出了一個基於SDN的大數據平臺,用於社交TV數據分析。

深入淺出學習大數據:探討大數據系統基準以及科學問題!

•處理模式

現有的批處理模式難以適應海量數據實時處理的需求,需要設計新的實時處理模式.在傳統的批處理模式中,數據首先被存儲,隨後掃描整個數據集並進行處理得到分析結果,時間極大地浪費在數據傳輸、存儲和重複掃描上.新的實時處理模式可以減少這種浪費.例如,現場(in-situ)分析可以避免因數據傳輸到集中存儲基礎設施所帶來的開銷,從而提高實時性能.大數據系統是個系統問題,

在處理模式上需要考慮多方面因素。一個任務的解決不僅僅是算法的問題,與傳輸和存儲等各方面也有關係.僅從計算複雜度來進行分析並不足夠,因為理論上計算複雜度低的算法,實際在機器上運行也不一定快.此外,由於大數據低價值密度的特點,可以採取降維或基於採樣的數據分析減少處理的數據量.具體而言,處理模式研究涉及大數據可視化計算分析、大數據處理複雜性問題、並行化深度機器學習和數據挖掘算法、異構數據融合、基於海量數據低價值密度採樣問題和高維海量數據降維問題。

深入淺出學習大數據:探討大數據系統基準以及科學問題!

•大數據應用

大數據的研究剛剛起步,典型大數據應用的研究能夠給商業帶來利潤,提高政府部門效率,並且促進人類科學的發展.主要的應用場景有:圖數據並行計算模型和框架,社會網絡分析、排名和推薦,web信息挖掘和檢索,媒體分析檢索和自然語言處理。

•大數據隱私

隱私也是大數據領域的重要問題.用戶的信息可能會被遭到暴露,比如企業的營銷策略、個人的消費習慣等.特別是在電子商務、電子政務和醫療健康領域,隱私保護顯得尤其重要,需要增強訪問控制.此外,還需要在增強訪問控制和數據處理的便利性之間達到一個平衡。

深入淺出學習大數據:探討大數據系統基準以及科學問題!

•“無限”數據

隨著雲計算、物網聯、移動終端、可穿戴設備等技術的發展,我們已經進入了大數據的時代。然而,產生的數據量也隨之日益增長。目前的大數據,在不久的將來還只會是小數據。因此,對於未來的大數據最確切的描述,或許會是“無限”數據。相應地,數據的增量和學習方法會是一個重要的問題。例如,當前用10億個樣本訓練了一個分類器,效果很好,但未來樣本數增加到15億的時候(之前的10億樣本已經不能完全表達數據的特徵),就會面臨一個問題,是利用15億個樣本重新訓練一個分類器,還是利用新增加的5億個樣本來修正原來用10億個樣本訓練得到的分類器呢?如果重新訓練分類器,這將會造成過大的時間和空間開銷,並且可擴展性差.以往,為了避免重複學習歷史樣本和減少後繼的訓練時間,我們可以採用增量學習的方法,即利用歷史學習的結果和新增加的樣本來修正之前的分類器.但面對不斷演化的“無限”大數據,是否需要研究新型的增量學習方法,從而動態自適應地進行預測並確保模型的準確性,或許將會是大數據未來發展需要解決的重要問題。

深入淺出學習大數據:探討大數據系統基準以及科學問題!

今天介紹了大數據系統基準和科學問題部分,後面會繼續帶你認識不一樣的大數據。

互聯網新浪潮,每日分享互聯網趣聞,福利、思維、模式


分享到:


相關文章: