近幾年開始竄紅的大資料分析工具Spark, 近日在Sor t Benchmark Competition(資料排序基準競賽),僅以23分鐘就完成排序多達100 TB的資 料量,打破了此前由另一個大資料分析工具 Hadoop保有70分鐘的世界記錄, 過程中只花了原本不到三分之一的時間就完成比賽。

圖片來源: 

Sort Benchmark

近幾年開始竄紅的大資料分析工具Apache Spark,不只是做為即時分析的新工具,更在效能上締造出新的世界記錄。近日在Sort Benchmark Competition(資料排序基準競賽)中,Spark僅以不到30分鐘就完成排序多達100 TB的資料量,打破了此前由另一個大資料分析工具 Hadoop保有72分鐘的世界記錄,過程只花了原本不到三分之一的時間就完成比賽。

不到半小時完成100TB資料排序,每分鐘完成4個TB

資料排序基準競賽一開始是由Jim Gray創辦,也是主要活動的贊助者,Jim Gray曾是微軟研究院的科學家,長年專研於資料庫和電腦運算處理,以降低科學研究所需耗費的儲存和運算成本。

然而,Jim Gray在2007年於海上失蹤後,則由其同事與歷屆活動競賽的獲獎者,共同籌組委員會來延續舉辦活動。

Spark這次參賽的是資料排序基準競賽的GraySort項目,是一個針對測量非常大量資料排序效能所進行測試的比賽,而在以Daytona為排序基準的GraySort類別上,Spark僅靠著部署207臺Amazon EC2 i2.8xlarge的虛擬機器,及配置了6,624顆虛擬核心處理器,最終只花費了23分鐘左右,就將儲存於硬碟內的100TB資料(大約為1兆筆的資料記錄)排序完成,換句話說,平均每分鐘可以排序處理4.27個TB的資料量。

而在此之前的世界記錄則是由雅虎研究團隊所保持,雅虎曾使用2,100臺安裝了Hadoop叢集的機器,花費了72分鐘的時間,來完成排序100TB的資料量。

然而,兩相比較之下,Spark所花費的時間,不僅打破了Hadoop所保持的資料排序世界記錄,甚至在完成時間也僅花不到原先的3分之1就達成,就連在機器使用數量上,Spark也只用了Hadoop數量的10分之1不到。

4小時內,將1000個 TB的資料排序完成

甚至,在近日一項非官方競賽的項目上,Spark更僅靠著使用190臺虛擬機器,在不到4小時內(234分鐘),就完成排序了多達1 PB的資料量(1PB大約有1000個 TB),並也打破了此前由Hadoop MapReduce所保有的16小時的排序時間。

事實上,使用Spark來參與GraySort資料排序基準競賽的Databricks公司,其背後的創辦人正是過去開發Spark的AMPLab專案團隊成員。

Spark最初是由加州大學柏克萊分校AMPLab專案的研究團隊,於2010年以Scala語言開發完成。

Spark為一個用於擴充資料處理的叢集運算引擎,可執行於一般商用硬體環境,並具有容錯能力,後來更發展成為一個開源大資料即時分析的工具,可用來彌補Hadoop即時分析的不足。

Spark因為使用了記憶體內運算(In-Memory Computing)技術,能在資料尚未寫入硬碟時,就在記憶體內分析運算,甚至透過Spark的串流處理套件(Spark Streaming),也能即時處理串流資料。

在進行資料處理上,Spark也採用了映射(Map)和化簡(Reduce)兩個步驟,可以支援各種資料庫可用性群組(Database Availability Group,DAG)任務和快速資料分享的操作。

根據Apache Spark官方的說明,Spark在記憶體內執行程式的運算速度,可以做到比Hadoop MapReduce的運算速度,還快上100倍,即便是執行於硬碟時,Spark也有達到10倍速度,並能支援多種儲存系統,包括像是Amazon S3、Hadoop分散式檔案系統(HDFS)及POSIX compliant檔案系統等。

Databricks執行長Ion Stoica表示, Spark在資料處理運算速度,能夠打敗Hadoop MapReduce的叢集運算速度,這樣的結果也印証了Spark可以作為一個滿足實現更快速、更擴充的大資料處理運算引擎的需求。

儘管在資料排序時間上,Spark比起Hadoop還快上許多,但仍不代表Spark沒有其他資料排序工具可與之抗衡。

像是來自加州大學聖地牙哥分校的研究團隊,就靠著一套TritonSort排序工具,在以Daytona為排序基準的GraySort類別上,使用了186臺Amazon EC2 i2.8xlarge的虛擬機器,只花不到23分鐘就完成比賽,甚至花的時間還比Spark少,而平均計算下來,其每分鐘可以排序處理4.35個TB資料量。

隨著大資料技術不斷演進,不少企業如電子商務、零售業及半導體製造等企業,開始廣泛運用大資料分析工具,如Hadoop等,甚至,更逐漸從傳統批次或離線分析,轉而走向了採用像是Spark等即時分析的大資料分析,做為更進階分析的加值應用。


Advertisement

更多 iThome相關內容