hive beeline 資料匯入匯出

2021-08-07 14:44:12 字數 2598 閱讀 9440

1.從本地檔案系統中匯入資料到hive表

echo "

create table test (id int, name string,age int, tel string)

row format delimited

fields terminated by ','

stored as textfile;

load data local inpath '/home/hadoop/add.txt' into table test;" | hive

注意:add.txt 字段分割符需要跟建立表字段的分割符一致

2.從hdfs上匯入資料到hive表

hadoop dfs -put /home/hadoop/add.txt /user/hive/add.txt

hive -e "load data inpath '/user/hive/add.txt'

into

table test;"

3.從別的表中查詢出相應的資料並匯入到hive表中

echo "

set hive.exec.dynamic.partition.mode=nonstrict;

create

table

ifnot

exists test1(

id int, name string

,tel string)

partitioned by(age int)

row format delimited

fields terminated by

',' stored as textfile;

insert

into

table test1 partition(age)

select id, name, tel,age

from test;" |hive

4.建立表的時候通過從別的表中查詢出相應的記錄並插入到所建立的表中

hive -e "create

table test2 as

select id, name, tel

from test;"

1.匯出到本地檔案系統

hive -e "insert overwrite local directory '/home/hadoop/test'

row format delimited

fields terminated by

'\t'

select * from test;"

2.匯出到hdfs中

hive -e "insert overwrite directory '/user/hive/'

row format delimited

fields terminated by

'\t'

select * from test;"

3.匯出到hive表

同資料匯入方法3

beeline匯入匯出,需要考慮beeline連線到的hiveserver2的伺服器才是你的本地,同時要注意實際是用的hive使用者操作本地的,需要確認下hive使用者是否有操作本地目錄,檔案的許可權

可以考慮遠端用beeline登陸的使用者,作為hiveserver2實際操作的使用者,如何配置可以找相關資料。後期會寫乙個hive許可權相關的文章

或者本地目錄檔案給hive使用者足夠的許可權

從許可權的角度解決beeline資料匯入匯出問題,如果需要遠端操作,那麼hiveserver2得部署在遠端

不考慮使用者許可權之類的問題,方式如下:

除了從本地檔案匯入問題外,同hive方式

本地檔案(先導入集群,再load):

hadoop fs -put add

.txt hdfs:

.openpf:8020/user/hive/add

.txt

; beeline -u jdbc:hive2:

.openpf:10000 -n root

-e "load data inpath '/user/hive/add.txt' into table test;"

注意:執行操作的伺服器可以是任意集群外的節點,只要配置了hadoop,beeline命令即可

除匯出到本地外,方法同hive

匯出本地檔案(先beeline 匯入hdfs,然後hdfs dfs -get)

beeline -u jdbc:hive2:.openpf:10000 -n root -e "insert overwrite directory '/user/hive/'

row format delimited fields terminated by

'\t'

select * from test1"

hadoop dfs -get hdfs:.openpf:8020/user/hive/000000_0

本地檔案匯入hive(beeline)案例 1

本地建立 export data student.txt檔案,把資料匯入到 hive 的 student id int,name string 表中。1 資料準備 1 在 export servers data 這個目錄下準備資料 root ambari01 mkdir p export data ...

c mysql匯入資料 mysql資料匯入

1 windows解壓 2 修改檔名,例如a.txt 3 rz 匯入到 linux data pcode sudo su cd data pcode rm rf txt 4 合併到乙個檔案 cat txt data.txt dos2unix data.txt 對比檔案行數 wc l txt 5 my...

c mysql匯入資料 MySQL 資料匯入

mysql 資料匯入 mysql 可以採用2種簡單的方法將之前備份檔案中的資料載入進 mysql 資料庫。利用 load data 匯入資料 mysql 利用 load data 語句作為批量資料載入器。下面這個範例將從當前目錄中讀取 dump.txt 檔案,然後把它載入進當前資料庫的表 mytbl...