大資料之Hive《五》

2021-08-14 03:29:14 字數 4093 閱讀 1478

1

)語法hive>load data [local] inpath '/opt/module/datas/student.txt' [overwrite] into table student [partition (partcol1=val1,…)];(1

)load data:

表示載入資料(2

)local:

表示從本地載入資料到

hive

表;否則從

hdfs

載入資料到

hive表(

3)inpath:

表示載入資料的路徑(4

)overwrite:

表示覆蓋表中已有資料,否則表示追加(5

)into table:

表示載入到哪張表(6

)student:

表示具體的表(7

)partition:

表示上傳到指定分割槽

2)實操案例(0

)建立一張表

hive (default)> create table student(id string, name string) row format delimited fields terminated by '\t';(1

)載入本地檔案到

hive

hive (default)> 

load

data 

local

inpath '/opt/module/datas/student.txt' into table default.student;(2

)載入hdfs

檔案到hive

中上傳檔案到

hdfs

hive (default)> dfs -put /opt/module/datas/student.txt /user/jduser/hive;

載入hdfs

上資料hive (default)>

load

data inpath '/user/jduser/hive/student.txt' into table default.student;(3

)載入資料覆蓋表中已有的資料

上傳檔案到

hdfs

hive (default)> dfs -put /opt/module/datas/student.txt /user/jduser/hive;

載入資料覆蓋表中已有的資料

hive (default)>

load

data inpath '/user/jduser/hive/student.txt' 

overwrite

into table default.student;

1)建立一張分割槽表

hive (default)> create table student(id int, name string) 

partitioned by (month string)

row format delimited fields terminated by '\t';

2)基本插入資料

hive (default)> 

insert

into table  student partition(month='201709') values(1,'wangwu');

3)基本模式插入(根據單張表查詢結果)

hive (default)> 

insert

overwrite table student partition(month='201708')

select id, name from student where month='201709';

4)多插入模式(根據多張表查詢結果)

hive (default)> from student

insert

overwrite table student partition(month='201707')

select id, name where month='201709'

insert

overwrite table student partition(month='201706')

select id, name where month='201709';

詳見4.5.1

章建立表。

根據查詢結果建立表(查詢的結果會新增到新建立的表中)

create table if not exists student3

as select

id, name from student;

1)建立表,並指定在

hdfs

上的位置

hive (default)> create table if not exists student5(

id int, name string

)row format delimited fields terminated by '\t'

location

'/user/hive/warehouse/student5';

2)上傳資料到

hdfs

上hive (default)>

dfs -put

/opt/module/datas/student.txt  /user/hive/warehouse/student5;

3)查詢資料

hive (default)> select * from student5;

注意:先用

export

匯出後,再將資料匯入。

hive (default)> 

import

table student2 partition(month='201709') 

from

'/user/hive/warehouse/export/student';

1)將查詢的結果匯出到本地

hive (default)> 

insert

overwrite 

local

directory

'/opt/module/datas/export/student'

select * from student;

2)將查詢的結果格式化匯出到本地

hive (default)> 

insert

overwrite 

local

directory

'/opt/module/datas/export/student1'

row format delimited fields terminated by '\t'             select * from student;

3)將查詢的結果匯出到

hdfs上(

沒有local)

hive (default)> 

insert

overwrite 

directory

'/user/jduser/student2'

row format delimited fields terminated by '\t'

select * from student;

hive (default)> 

dfs -get

/user/hive/warehouse/student/month=201709/000000_0  /opt/module/datas/export/student3.txt;

基本語法:(

hive -f/-e 

執行語句或者指令碼

> file

)[jduser@hadoop102 hive]$ 

bin/hive -e

'select * from default.student;' > /opt/module/datas/export/student4.txt;

hive (default)> 

export

table default.student 

to'/user/hive/warehouse/export/student';

注意:truncate

只能刪除管理表,不能刪除外部表中資料

hive (default)> truncate table student;

大資料學習之Hive

建立乙個自定義列表 如何建立乙個註腳 注釋也是必不可少的 katex數學公式 新的甘特圖功能,豐富你的文章 uml 圖表 flowchart流程圖 匯出與匯入 1 hive處理的資料儲存在hdfs 2 hive分析資料底層的實現是mapreduce 3 執行程式執行在yarn上 hive的優缺點 帶...

大資料之Hive常見函式

hive中常見的sql函式 顯示host位址 select parse url 位址 host 例項 select parse url host 字串連線函式 1 concat 函式 將多個字串用特定符號鏈結成乙個字串 concat constellation,blood type,欄位1,欄位2,...

61 大資料 hive 查詢資料五 join語句

hive只支援等值連線,在連線謂詞中只能使用等號 hive不支援在on子句中的謂詞間使用or on指定連線條件,where指定過濾條件 執行順序 先執行join,再通過where語句進行過濾 hive中的join操作的關鍵字必須在on中指定,不能在where中指定,不然會先做笛卡爾積再過濾 可以在查...