本文將介紹如何連結 Hbase 資料源。
注:該資料庫不支援使用直連屬性的資料表。
注:該驅動包也需要放置到 hbase/lib 下,然後重啟 Hbase ( 使用命令./stop-hbase.sh, 再./start-hbase.sh)
在連結資料庫之前,請收集以下資訊:
資料庫所在伺服器的 IP 位址和埠號;
資料庫的名稱;
若是帳號密碼認證,需要收集帳號和密碼;若是 Kerberos 認證,需要收集用戶端 principal 和 keytab 鍵路徑;
需要連結的資料庫模式;
1)以管理者身分登入 FineBI ,點選「管理系統>資料連結>資料連結管理」,點選「新建資料連結」,如下圖所示:
注:如果非管理者使用者想要配置資料連結,需要管理者給其分配管理系統下資料連結節點的權限,具體操作請查看 資料連結權限
2)找到 Hbase 的圖示,如下圖所示:
3)驅動切換為「自訂」選擇 2.1 節上傳的驅動,然後輸入 2.2 節的連結資訊。
Hbase 支援 Kerberos 認證,Kerberos 認證方式詳情可參見:資料連結Kerberos認證
注:使用者可以選擇性修改進階設定,詳細請參見 配置資料連結 4.3 節
4)點選「點選連結資料庫」,連結成功後選擇資料庫模式(若不選則使用預設模式)。最後儲存該資料連結,如下圖所示:
有兩種方式可以將資料庫中的表新增至 FineBI :
新增資料庫表
新增SQL資料集
問題現象:
phoenix-4.12.0-HBase-1.2-client.jarput 命令 FineBI 安裝目錄FineBI/webapps/WebReport/WEB-INF/lib後,重啟 FineBI ,FineBI 一直處於啟動頁面。如下圖所示:
解決方法:
1)使用壓縮工具開啟phoenix-4.12.0-HBase-1.2-client.jar檔案,進入javax檔案,刪除el和servlet檔案,如下圖所示:
3)重啟 FineBI 。
Hbase 資料連結成功後,新增實時 SQL 資料集並製作自助資料集時,暫不支援資料庫表中帶有小寫和特殊符號(如“.”)的欄位名。若需要新增此類欄位,建議使用抽取資料。
JDBC 存取資料庫無法連結, 提示 get locations 錯誤或者 zookeeper 找不到對應的位址。
解決方案:
連結前請檢查 /etc/hosts 中的機器名對應 IP 是否為局域網 IP;
檢查 /etc/hostname 中機器名設定和 /etc/hosts 中是否配置一致;
檢查 FineBI 所在機器 hosts 配置的 IP 機器名 是否正確。
本地連結時需要配置 /etc/hosts 檔案,新增遠端映射:IP 機器名,例如: 192.168.5.206 centos-phoenix
參考 http://phoenix.apache.org/installation.html#SQL_Client,在 https://sourceforge.net/projects/squirrel-sql/?source=typ_redirect 下載 SQuirrel ,預設安裝後,將 phoenix-xxxx-client.jar 放到%SQuirrel_HOME%/lib下,啟動 SQuirrel 後, 先新增驅動重新整理增 Alias 即可。
連結華為大數據平台 Hbase 資料庫異常,使用說明文檔中的驅動,會報錯:Unable to find org.apache.hadoop.hbase.ipc.NettyRpcClient ,NettyipcCilent 方法找不到,如下圖所示:
當前資料庫環境對 configration 有額外配置,按以往方式連結會出現配置檔案讀取異常。
調整配置檔案和連結 URL 的寫法,解決校驗問題,實現資料庫直連。
修改配置檔案:將使用的配置方法寫入到 Hbase-siste.xml 中,再put 命令到相關的 jar 包中
修改 URL :Hbase資料連結 URL 格式改為:jdbc:phoenix:quorum:port/database:pricinpal:keytabPath,透過解析 URL 可以得到相關屬性,並且會優先使用 URL 中得到的屬性配置。
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉
反馈已提交
网络繁忙