1. 程式人生 > >Pentaho Kettle 連線 Hive2 進行 ETL 的總結

Pentaho Kettle 連線 Hive2 進行 ETL 的總結

複製驅動:

  1. 首先在Hive的安裝目錄裡找到Hive的jdbc jar檔案. 比如 hive/apache-hive-2.3.2-bin/jdbc/hive-jdbc-2.3.2-standalone.jar. 
  2. 複製這個jar檔案到Kettle的lib目錄下, 比如 /Kettle/data-integration/lib/
  3. 重啟Kettle

Hadoop許可權設定:

參考: 
https://blog.csdn.net/u012948976/article/details/49904675

https://blog.csdn.net/u012948976/article/details/49904675

Hadoop使用代理機制, 在hadoop的core-site.xml中新增如下程式碼:

<property>  
	<name>hadoop.proxyuser.super.hosts</name>  
	<value>*</value>  
</property>  
<property>  
	<name>hadoop.proxyuser.super.groups</name>  
	<value>*</value>  
</property>  

意思是允許任意主機(第一個*)的任意組((第二個*))的使用者使用super這個帳號來訪問叢集.即所謂i的impersonate模式.

這種impersonate模式類似 ubuntu中常用的 sudo, 能讓普通賬戶, 例如user1 , 獲取super這個帳號(管理員)的許可權, 並執行操作. 但在系統執行日誌中, user1並不會被super覆蓋, 而是仍然會被記錄user1提交了job.

啟動hive 伺服器模式:

hive --service hiveserver2

Thrift模式的伺服器會被啟動, 預設埠10000