采用HIVE自帶的apache 的JDBC驅動導入數據基本上只能采用Load data命令將文本文件導入,采用INSERT ... VALUES的方式插入速度極其慢,插入一條需要幾十秒鍾,基本上不可用。
Hive 2.1.1需要依賴的jar包有:
hadoop-common-2.6.0.jar
hive-common-2.1.0.jar
hive-jdbc-2.1.0.jar
hive-metastore-2.1.0.jar
hive-serde-2.1.0.jar
hive-service-2.1.0.jar
hive-service-rpc-2.1.0.jar
hive-shims-2.1.0.jar
libthrift-0.9.3.jar
可通過這里查找下載:https://mvnrepository.com/artifact/org.apache.hive/hive-jdbc/2.1.1
如果想從各種數據源直接抽取數據導入Hive,且數據量不算太大的話,建議使用CDATA的驅動,但這個驅動是收費的,有一個月的試用期,試用期到期用新的郵箱地址繼續申請也可以。
下載地址:https://www.cdata.com/drivers/hive/jdbc/
下載后解壓並運行setup.jar(雙擊運行),安裝到本地磁盤后,打開安裝后的目錄,里邊有三個文件
將jar和lic文件導入到HHDI\WEB-INF\lib下,到期后重新卸載安裝該驅動后,將lic文件更新即可
在HHDI驅動管理中,添加如下驅動
cdata.jdbc.hive.HiveDriver
jdbc:hive:Server={host};Port={port};TransportMode=BINARY
數據連接配置:
數據抽取從Oracle到Hive,1w條記錄大約用時50秒,數據量不算太大時,尚可接受。
海量數據導入,還是建議先將數據導出到txt並上傳到hdfs,用loaddata命令導入,如下:
關於如何從數據庫導出文本並導入Hive,請看另外一篇文章:
https://www.cnblogs.com/haohedi/p/10417902.html
HaoheDI讓ETL變得簡單,http://www.haohedi.com





