來源:互聯網
上載者:User
關鍵字
Cloudera
BigInsights
應用集成系統
本文首先簡要介紹 BigInsights 與 Cloudera 集成的相關背景,在此基礎上介紹基於 cloudera 的 BigInsights 集群的系統架構,之後詳細介紹在 Cloudera 之上的兩種集成方式, 最後介紹如何管理和應用集成系統。
Cloudera 和 IBM 都是業界領先的大資料平臺軟體與服務提供者,2012 年 4 月,兩家公司宣佈在該領域建立合作關係,強強聯手。 Cloudera 提供了完整的 hadoop 系統,並在此基礎上增強了可擴充性、穩定性和平臺性能。 InfoSphere BigInsights 則基於 hadoop 系統,建立了豐富的大資料分析解決方案、工具以及軟體。 通過將 BigInsights 部署到 CDH 的集群上,能夠充分的發揮兩者的優勢,為使用者實現最大的價值。
基於 CDH3 的 BigInsights 介紹
需求背景
Cloudera 是一家提供 Hadoop 軟體以及服務的公司,Cloudera 發佈的 CDH 套裝軟體包括 Hadoop 以及與其相關的開源軟體,Cloudera 完善了 Hadoop 的核心功能 —— 分散式運算和高擴充性存儲,並加入了諸如 安全性、高可用性在內的其他企業級特性。 Cloudera 還發佈了一款名為 Cloudera Manager 的軟體,該軟體用於自動安裝部署 Hadoop 集群,以及對集群服務和配置的管理。
InfoSphere BigInsights 是 IBM 的大資料管理與分析平臺,底層基於 Hadoop 系統。 BigInsights 維護了 IBM 的 Hadoop 版本,並在此基礎上對作業調度,mapreduce 運算框架以及分散式檔案系統等進行了改進。 與此同時,BigInsights 還提供了包括視覺化資料查詢、文本分析、集群控制在內的眾多軟體與技術。 BigInsights 與 CDH3 類似,但也有許多不同之處。 Cloudera 僅提供 Apache Hadoop 系統和集群管理軟體,而與之相比,BigInsights 提供了大量業界領先的大資料分析工具,是對已有開源技術的延伸,更加適用于企業級應用。 具體的對比如以下表格所示。
表 1. CDH3 與 BigInsights 功能對比
特性 BigInsights CDH3 集群管理 是 是 檔管理 是 是 Eclipse 開發環境 是 否 集群監控 是 是 文本分析工具 是 否 視覺化資料分析工具 是 否 集成工具 是 否
在一些客戶環境中,他們已經部署了 Cloudera 的 Hadoop 系統,將資料存放到了 HDFS 中,也部署了一些應用及上層軟體。 在不影響這些系統使用的情況下,將 BigInsights 部署到安裝有 CDH 的集群上,使得 BigInsights 能夠運行在 CDH 集群,能夠充分發揮 BigInsights 資料分析的優勢,達到 1+1>2 的效果。 BigInsights 從 1.4 企業版開始支援 CDH3u3,而隨後發佈的 BigInsights 2.0 版本宣佈了對 CDH3u4 和 CDH3u5 的支援。 目前,Cloudera 已經發佈了 CDH4,但是因為該版本還處於 Beta 階段,其穩定性和可靠性並未達到企業級應用的要求,因此 BigInsights 還未增加對它的支援。
系統架構
InfoSphere BigInsights 和 Cloudera CDH3 都包含了大量的軟體和工具,包括核心系統 Hadoop 以及基於 Hadoop 的資料管理和分析的軟體。 下表列舉了 BigInsights 和 CDH3 發行版本所包含的元件。
表 2. BigInsights 和 CDH3 的元件清單
元件 BigInsights 2.0 CDH3u3 CDH3u4 CDH3u5 簡述 MapReduce 1.0 0.20.2 0.20.2 0.20.2 Mapduce 計算框架 HDFS 1.0.3 0.20.2 0.20.2 0.20. 2 Hadoop 分散式檔案系統 HBase 1.0.3 0.90.4 0.90.6 0.90.6 分散式列資料庫 Zookeeper 3.4.3 3.3.4 3.3.5 3.3.5 分散式配置資訊協調服務 Flume 0.9.4 0.9.4 0.9.4/1.1.0 0.9.4/1.2.0 分散式日誌收集服務 Hive 0.9.0 0.7.1 0.7.1 0.7.1 基於 Hadoop 的類 SQL 資料倉儲 Oozie 3.2.0 2.3.2 2.3.2 2.3.2 MapRed 作業工作流管理 / 協調系統 Pig 0.10.0 0.8.1 0.8.1 0.8.1 基於 Hadoop 的資料查詢語言 Lucene 3.3.0 JAVA 全文搜尋引擎庫 BigSheets 2.0 基於 Web 的視覺化資料查詢 / 分析工具 Orchestrator 2.0 MapRed 作業工作流管理 / 協調系統 Jaql 2.0 & nbsp; 基於 JSON 的分散式資料查詢語言 Jaql Server 2.0 用於處理 Jaql 查詢的 REST 服務 Eclipse Tooling 2.0 &nb sp; Eclipse 開發外掛程式(包括 MapRed,Hive,HBase,Pig 等) Text-Analytics(SystemT) 2.0 文本分析工具 Sqoop 1.4.1 1.3.0 1.3.0 1 .3.0 資料傳輸工具 Mahout 0.5 0.5 0.5 基於 Hadoop 的機器學習庫 Whirr 0.5.0 0.5.0 0.5.0 集群服務管理
從上表中可以看出,有很多軟體在兩個產品中都存在,在集成時,CDH3 中的 Hadoop,hbase,zookeeper 和 flume 將會替代 BigInsights 中的相應元件;對於其他開源元件,諸如 hive,oozie,pig 等,BigInsights 仍然會安裝 IBM 的版本,當然這些元件會運行在 CDH3 的 Hadoop 上,因為它們並不會導致任何衝突;而對 IBM 特有的元件,也將被安裝並運行在 CDH3 的 Hadoop 集群上,比如 WebConsol e,EclipseTooling,SystemT 等。 BigInsights 保證了良好的平臺相容性,與 CDH3 彼此協作,使得使用者能夠在避免資料 / 服務遷移的基礎上,享受 BigInsights 的特性和功能。
BigInsights 與 CDH3 集成的遵循了以下原則:
1. BigInsights 與 CDH3 的部署相對獨立,不影響原先任何 CDH3 的軟體和服務的使用
2. BigInsights 不修改任何 CDH3 已有的配置
3. 所有 BigInsights 的作業將被提交到 CDH3 的 Hadoop 系統中執行
4. 除了少部分管理功能被禁用,其他功能都能夠正常使用
5. 支援由 CDH3 包手動設定以及由 Cloudera Manager 安裝的 CDH3 集成
6. 保證對 Oracle JAVA 的相容
當把 BigInsights 部署到一個已有的 CDH3 的集群上時,軟體層次的結構如下圖所示:
圖 1. BigInsights 和 CDH3 的元件清單
由上圖可以看出,BigInsights 整合了已有的 CDH3 的元件,如 Hdfs, mapreduce, zookeeper 等,將它們很好的融入 BigInsights 軟體體系,使得它們與其他 BigInsights 的元件一起合同工 作在同一個平臺上。