Apache Spark/Shark

Reynold Xin / Committer of Spark/Shark
這是一篇晚了兩個禮拜的心得文。上上星期四 (9/12) 到 Yahoo! 參加了 Yahoo Tech Conference。這次的講者有 Data team, E-Commerce engineering 的 Director, Wennie Hwang、Data Platform 的 Distinguished Architect, Tim Tully 及 Spark/Shark 的作者 Reynold Xin。

由於前面兩個 talk 不能拍照也沒有投影片可以下載, 而且 Tully 在分享我覺得是精華的架構圖時也很快就轉場過去了, 所以能分享的大概只剩讓我印象深刻的 Spark/Shark 了。

由於前面兩個講者都有提到  SparkShark, 也提到 Yahoo! 在第一個 Big Data 的 generation 是採用自製的工具, 第二個 generation 則是選擇了 Hadoop。目前則是進行到了第三個 generation, 將採用 YARN 及 Spark/Shark。所以如果您對 Big Data 有興趣, 應該不能錯過這兩個被提到的東西。

Spark/Shark 作者之一的 Reynold Xin 相當地年輕, 演講內容也很淺顯易懂, 最讓人感興趣的部份是下面投影片中(P.24), 將 Spark/Shark 與 Hadoop M/R 在執行相同的商業邏輯運算時, 那令人驚嘆的效能差距。



簡單的介紹一下 Spark


官網上介紹 Spark 是:
Apache Spark is an open source cluster computing system that aims to make data analytics fast — both fast to run and fast to write
簡單的說就是可以讓原本使用 Hadoop 來處理及分析資料的系統快 10 到 100 倍的好玩意。

那 Shark 呢?


有玩過 Hadoop 生態圈的人對 Hive 一定不陌生, 而 Shark 其實就只是 Spark + Hive 這麼直白好懂。而且實作上 Shark 更只像是個 wrapper 一樣直接呼叫 Hive 來幫忙轉換。(Hive 就是讓 Developer 可以使用類 SQL 來協助轉換並執行 Map/Reduce 的好工具)

Reynold Xin 提到目前已經支援 Python、Java, 看起來進入的門檻又更低了... (雖然 Scala 看起來也沒有很難入門, 但是時間實在很難擠啊, 唉。)

留言