1. 概述
1.1 版本
FineBI 版本 | 功能變動 |
---|---|
6.0 | - |
1.2 應用場景
Hadoop 是個很流行的分佈式計算解決方案,Hive是建立在 Hadoop 上的資料儲倉基礎構架。
本文將介紹如何連結 Hadoop Hive 資料源。
2. 準備工作
2.1 版本和驅動
下載驅動,並將其上傳至 FineBI,如何上傳可參見:驅動管理 2.1 節
注:在上傳驅動包時,需要解壓下面的「日誌jar」檔案,和驅動一起上傳至 FineBI。
支援的資料庫版本 | 驅動包下載 | 日誌jar下載 |
---|---|---|
hive_1.1 | ||
Hadoop_Hive_1.2;hive2.3; hive2.1.2;hive2.1.1 |
2.2 收集連結資訊
在連結資料庫之前,請收集以下資訊:
資料庫所在伺服器的 IP 位址和埠號;
資料庫的名稱;
若是帳號密碼認證,需要收集帳號和密碼;若是 Kerberos 認證,需要收集用戶端 principal 和 keytab 鍵路徑;
3. 具體連結步驟
1)以管理者身分登入 FineBI ,點選「管理系統>資料連結>資料連結管理」,點選「新建資料連結」,如下圖所示:
注:如果非管理者使用者想要配置資料連結,需要管理者給其分配管理系統下資料連結節點的權限,具體操作請查看 資料連結權限
2)找到 Hadoop Hive 資料庫,如下圖所示:
3)切換驅動為「自訂」選擇 2.1 節上傳的驅動,並輸入 2.2 節收集的連結資訊,如下圖所示:
Kerberos 認證方式詳情可參見:資料連結 kerberos 認證
使用 Kerberos 認證需要注意以下事項:
連結前請檢查 /etc/hosts 中的機器名對應 IP 是否為局域網 IP;
檢查 /etc/hostname 中機器名設定和 /etc/hosts 中是否配置一致;
檢查 FineBI 所在機器 hosts 配置的 IP 機器名是否正確;
本地連結時需要配置 /etc/hosts 檔案,新增遠端映射:IP 機器名,例如: 192.168.5.206 centos-phoenix 。
4)點選「測試連結」,若連結成功則點選「儲存」,如下圖所示:
4. 新增資料庫的表至FineBI
5. Hadoop 相關報錯解決方法
Provider org.apache.hadoop.hdfs.DistributedFileSystem could not be instantiated
問題現象:
在進行 Hadoop 相關資料庫連結時,put 命令驅動後,FineBI 起不來。查看 FineBI 的日誌 %FineBI%/logs/fanruan.log 時,有如下 hadoop 相關報錯:
Provider org.apache.hadoop.hdfs.DistributedFileSystem could not be instantiated
報錯截圖:
解決方案:
去資料連結的驅動處,查看put 命令的資料庫相關驅動中是否有如下 hadoop 相關 jar 包,若有的話,將其刪除。因為這些 hadoop 相關驅動與 FineBI 內建 hadoop 驅動衝突,導致 FineBI 無法啟動。刪除 jar 包後,重啟 FineBI 即可。