本文將介紹如何連結 Apache Impala 資料源。
下載驅動,並將其上傳至 FineBI,如何上傳可參見:驅動管理 2.1 節
Impala 2.2
Impala 2.3
Impala 2.8
Impala 2.9
Impala 2.10
ImpalaJDBC41.zip
ClouderaImpalaJDBC41_2.5.43.rar
在連結資料庫之前,請收集以下資訊:
資料庫所在伺服器的 IP 位址和埠號;
資料庫的名稱;
若是帳號密碼認證,需要收集帳號和密碼;若是 Kerberos 認證,需要收集用戶端 principal 和 keytab 金鑰路徑;
1)以管理者身分登入 FineBI ,點選「管理系統>資料連結>資料連結管理」,點選「建立資料連結」,如下圖所示:
注:如果非管理者使用者想要配置資料連結,需要管理者給其分配管理系統下資料連結節點的權限,具體操作請查看 資料連結權限
2)選擇 APACHE IMPALA 圖示,如下圖所示:
3驅動切換為「自訂」選擇 2.1 節上傳的驅動,然後輸入 2.2 節的連結資訊。若使用者需要在直連版本下使用該資料連結,需要在 URL 後增加後綴參數 ;UseNativeQuery=1 ,如下圖所示:
Kerberos 認證方式詳情可參見:資料連結 kerberos 認證
若 Impala 資料庫存在認證,則需要在 URL 後加入AuthMech參數,不同參數值代表了不同的認證,如下表所示:
注:若資料庫沒有帳號密碼時不需要加該參數。
URL 格式為:jdbc:impala://ip:port/dbname;authmech=n( n 可以等於 0、1、2、3 分別代表上面的認證方式)
帳號密碼認證:AuthMech 參數值為 3 ,則 URL 格式為:jdbc:impala://ip:port/dbname;authmech=3
帳號認證:AuthMech 參數值為 2 ,則 URL 格式為:jdbc:impala://ip:port/dbname;authmech=2
Kerberos 認證:AuthMech 參數值為 1 ,則 URL 格式為:jdbc:impala://ip:port/dbname;authmech=1
若資料庫的認證方式為 Kerberos 認證,除了要加 AuthMech 參數,需填入登入過 kdc 的用戶端名稱、keytab 金鑰路徑和 Kerberos 認證對應 URL(加上AuthMech、KrbHostFQDN、KrbServiceName 三個參數)
伺服器的別名,請參見 參數含義
URL 格式為:jdbc:impala://ip:port/default;AuthMech=1;KrbHostFQDN=hostalias;KrbServiceName=impala
例如:jdbc:impala://192.168.5.127:21050/default;AuthMech=1;KrbHostFQDN=quickstart.cloudera;KrbServiceName=impala,具體請參見 資料連結Kerberos認證
4)點選「測試連結」,若連結成功則點選「儲存」,如下圖所示
有兩種方式可以將資料庫中的表新增至 FineBI :
新增資料庫表
新增SQL資料集
連結 Apache Impala 資料庫時,FineBI 在資料查詢的時候忽略大小寫,欄位查詢結果都為小寫。
impala 不支援 date 型別,支援 timestamp。
impala 不支援多個 distinct count,多個去重記錄數預覽 SQL 會報錯。