Hadoop平台與應用規劃實作 報告者:劉育維
概要 未來研究室將會以Hadoop平台為主軸開發各項應用系統,單機使用 VM建構Hadoop平台會面臨效能低落問題,而L504雲端系統也尚不穩定, 故原則上應以實體主機為開發載體。 以研究室現有三臺主機構成公用Hadoop開發平台 開發者在本機安裝Eclipse與相關套件,以遠端方式控制HDFS與測 試Hadoop應用,編寫方式與一般Java程式無異 開發完成後,再於L504雲端系統(Vsphere)建構專屬VM將系統上線 由於Hadoop版本推陳出新速度極快,開發者必須熟悉Hadoop的安裝 過程,以對公用Hadoop平台進行更新
公用Hadoop開發平台 示例圖如下:
Hadoop應用開發主題 Hadoop的應用開發可分為以下主題: 基礎MapReduce資料分析程式,通常以指令執行 Hadoop平台的Web應用開發,使用JSP+Servlet+MapReduce便能 設計出一個能動態生成網頁內容的雲端應用 標準化的HBase資料匯入工具,資料來源可能是SQL、XML、Json、 CSV等多類型檔案,目前僅Sqoop可處理SQL資料匯入Hbase作業
Hadoop應用皆以Java撰寫,故在網頁應用上使用JSP來銜接 產生網頁內容,目的在實現網頁應用的即時資訊反饋 Web應用開發架構 Hadoop應用皆以Java撰寫,故在網頁應用上使用JSP來銜接 產生網頁內容,目的在實現網頁應用的即時資訊反饋
Web應用開發架構 在本架構中,用戶端在 html表單上選擇檔案與 欲查詢字串後執行,伺 服器會透過JSP呼叫對應 的MapReduce程式,執行 期間JSP會動態產生目前 運算進度回饋給用戶端, 最後回報運算結果與日 誌檔案。如此,本架構 便能應用在各種網頁即 時應用中。
HBase匯入工具 HBase的資料匯入可分兩部分,一是使用Sqoop套件將關聯資料 庫匯入HBase,另一則必須撰寫額外的轉換工具,具備xml、csv、 json等格式轉換與匯入功能。
Demo
手冊編寫 目前已完成基本的Hadoop平台安裝手冊,將逐步編寫其它套件 的內容,各手冊主題如下: Hadoop平台安裝與設定 Eclipse+Hadoop Plugin安裝與設定,及開發環境操作說明 HBase、Hive與Sqoop安裝與設定 MapReduce程式開發基礎說明 公用Hadoop平台操作與錯誤排除說明