如何評測一個大數據系統(tǒng)
數據的爆炸式增長掀起了大數據的研究熱潮,越來越多的應用領域涉及到大數據的處理和存儲,其所蘊藏的科學價值和商業(yè)價值逐漸體現。為了挖掘大數據中隱藏的知識,各種大數據系統(tǒng)應運而生,例如Hadoop、MapReduce、Hive、Spark等。如何客觀地評價眾多的大數據系統(tǒng)以及從中選擇適合自身需求的系統(tǒng)成為學術界和工業(yè)界普遍關心的問題,大數據工業(yè)界和研究社區(qū)迫切需要一套公認的大數據評測基準。
Jim Gray認為:特定領域的評測基準應選擇典型應用,并滿足領域內應用的多樣性。據此他進一步提出了一套成功的評測基準需要滿足的4個條件:系統(tǒng)相關性、可移植性、可擴展性和簡單。其中,系統(tǒng)相關性是指能夠評測領域相關的系統(tǒng)性能,包括系統(tǒng)的峰值性能,性價比等;可移植性是指評測基準能夠移植到不同的平臺上,易于在不同的系統(tǒng)和架構上實現;可擴展性是指能夠適應不同的系統(tǒng)規(guī)模;簡單是指評測基準易于理解,評測結果具有可靠性。
參考Gray提出的4條標準,并結合大數據海量、高速、多樣的特性,我們提出了針對大數據領域的評測基準需要滿足的需求。
可代表性
大數據領域具有非常廣的覆蓋范圍,信息時代的來臨使得越來越多的應用領域涉及到大數據的處理和存儲,因此一個完整而全面的評測基準不可能一蹴而就。如何盡可能提高負載覆蓋度又不失評測的簡易性是很大的挑戰(zhàn),這也就要求評測基準具有領域代表性。
我們認為大數據領域的代表性主要體現在3個方面:
①代表性負載。
眾所周知,目前應用領域極其繁多,領域之間有一定的共有特性,但每個領域有其獨特性,因此應用領域和負載的代表性在一定程度上也就決定了評測基準的代表性;
②代表性數據。
大數據領域與傳統(tǒng)數據庫等領域的一個顯著區(qū)別即是數據類型多元化,傳統(tǒng)的結構化數據不再占據主導地位,半結構化和非結構化數據爆炸性增長,因此評測基準不能忽略復雜而多樣的數據類型;
③代表性軟件棧。
數據迅猛增長催生了眾多的大數據處理和存儲系統(tǒng),然而不同的軟件棧對大數據負載的行為特征具有很大的影響,因此大數據評測基準需要涵蓋代表性軟件棧。
可移植性
大數據評測基準不僅需要能夠縱向地評測大數據系統(tǒng),而且需要能夠對不同的系統(tǒng)進行橫向的對比。這就要求相同的負載能夠提供不同的實現方式,評測基準能夠便利地移植到其他平臺。為了使不同的實現方式具有公平的可比性,針對不同平臺的實現,需要具有相同的輸入和輸出,以及相同的算法處理邏輯。如今,一系列針對大數據處理和存儲的開源產品被發(fā)布,例如MapReduce、Spark等,所以在評測基準的實現過程中需要考慮基于這些不同的軟件棧的實現。
可擴展性
大數據評測基準需要提供可擴展的數據集和負載。大數據的一個顯著特征即是數據量大,單一節(jié)點的存儲已逐步轉變成分布式存儲,因此評測基準所提供的數據和負載需要適應不同規(guī)模的平臺。然而如今大多數的大數據持有者視數據為重要的商業(yè)機密,因而能夠提供符合真實數據特性的可擴展數據集是大數據評測基準重要而基本的需求。
可理解性
評測基準需要具有簡易性,易于理解,并易于部署和評測,同時評測結果能夠指導系統(tǒng)的評價、改進和優(yōu)化。然而,大數據系統(tǒng)本身非常復雜。僅僅從簡單性的角度來選擇典型負載,可能會使基準程序喪失代表性。因此,我們用可理解性來取代原有的簡單性需要?衫斫庑杂校滁c含義:能從基本操作單元和負載模式的角度理解典型負載;評測結果需要簡單直觀,評測人員能夠根據負載的特性分析結果的合理性并判斷系統(tǒng)的瓶頸或者優(yōu)劣;評測結果需要具有穩(wěn)定性,其結果必須是可靠的并且可重現的。
大數據系統(tǒng)的蓬勃發(fā)展催生了大數據基準測試的研究,如何公正地評價不同的大數據系統(tǒng)以及怎樣根據需求選取合適的系統(tǒng)成為了熱點問題。大家在使用的過程中,不妨也動腦筋想一想,為什么選擇這些系統(tǒng)?按照評測的基準還有哪些系統(tǒng)也值得了解?這樣你的編程之旅才不容易迷茫。

請輸入評論內容...
請輸入評論/評論長度6~500個字