Azure上架設與使用Apache Spark 服務 – 入門篇

Apache Spark 是近年來快速興起的巨量資料處理技術。 一開 始在2009年由加州大學柏克萊分校的AMPLab開發,並於2010年成為Apache的Open Source 專案之一。Spark 藉由在資料處理過程中(運算, 儲存等)大量採用In-Memory 的處理方式,具有優於過往以MapReduce 架構為核心的資料處理技術速度,一般說來可以達到數十倍的效能提升(理論上甚至可以達到百倍的處理效能提升)。 在2014年的Sort Benchmark Competition(資料排序基準競賽)中,Spark用更少機器且花了不到一半的時間,打破過去由Hadoop 保持的世界紀錄,更是奠定它在巨量資料處理速度上的領先者地位。 目前在Spark 的框架上,已經發展出 Spark SQL (以SQL 語法操作查詢資料), MLlib (機器學習),以及處理即時串流資料的Spark Stream。豐富的擴充模組加上效能的優勢,讓Spark 的使用人數快速增加。尤其MLlib的機器學習演算法日益完備,在Apache 專案中已經逐漸取代Mahout專案在機器學習中的地位。    Microsoft Azure 的HDInisght 叢集服務原本就支援Spark 1.0, 在今年(2015)三月12號後 HDInsight 叢集服務 3.2 也正式支援Spark 1.2.  Spark 1.2 相較於 Spark 1.0 提高了效能跟穩定度, 並且在各擴充模組上新增多項重要功能 (如在Spark Stream 上支援完整 H/A 模式). 本篇文章介紹逐步介紹如何在微軟 Azure 雲端服務中部屬Spark 1.2.  (Spark…