分桶表函式
hive shell的常用操作
create
table gfstbl(
id int
, name string,
age int
, gfs array
, address map
, info struct
)row format delimited
fields
terminated
by' '
collection items terminated
by','
map keys
terminated
by':'
lines
terminated
by'\n'
;location "/test"
//可以設定源資料的位置,若不設定預設就在hive的工作目錄區
describe
[extended
|formatted] table_name;
//extended;極簡的方式顯示
//formatted;格式化方式來顯示
例describe
extended gfstbl;
//預設就是extended
//只是建立表結構
create
table gfstbl1 like gfstbl;
//會建立相應的表結構,並且插入資料
create
table gfstbl2 as
select id,name,gfs,address from gfstbl;
insert方式
insert
into table_name values()
;
load方式
這種方式實際是將檔案剪下貼上到表的工作目錄區中
load
data
[local
] inpath "/路徑"
into
table table_name;
從其他表中查詢資料insert到新錶中
insert
into
table tablename1
[partition
(partcol1=val1, partcol2=val2 ...
)] select_statement1 from from_statement;
//習慣寫法將from提前
from from_statement
insert overwrite table tablename1
[partition
(partcol1=val1, partcol2=val2 ...
)[ifnot
exists
]] select_statement1
例from day_hour_table
insert
into rest
select
count(*
)from day_hour_table;
外部表在刪除時只會刪除表(即元資料),不會刪除hdfs上的源資料
create external table wc_external
(word1 string,
word2 string)
row format delimited
fields
terminated
by' '
location '/test/external'
;//location可加可不加,不加location預設是在hive的工作目錄區
建立乙個檔案並輸入符合表的規則的資料,再將這個檔案複製到這個表的工作目錄區中,查詢該錶,發現表的資料量增多
用load data將工作目錄中的檔案再次新增新增到這個表中,發現表的資料量沒有增加
將檔案複製到hdfs上的其他目錄中,再次用load操作新增到表中,發現表中資料量增加,且原目錄中的檔案消失(即正常load操作,資料被剪下進表檔案中)
大資料 匯出Hive表中的資料
匯出hive表中的資料方式由很多種。一下就介紹一下 insert overwritelocaldirectory opt datas hive emp exp row format delimited fields terminated by t collection items terminate...
大資料從入門到實戰 Hive表DDL操作(二)
二 實踐詳解 叮嘟!這裡是小啊嗚的學習課程資料整理。好記性不如爛筆頭,今天也是努力進步的一天。一起加油高階吧!hive資料定義語言 date definition language 包括 create drop alter資料庫 create drop truncate表 alter 表 分割槽 列...
Hive的資料庫和表操作
一 hive資料庫操作 1.1 檢視資料庫 show databases 使用like關鍵字模糊匹配 顯示包含db 字首的資料庫名稱 show databases like db 1.2 使用資料庫 use database名稱1.3 建立資料庫 create database dbname 通過l...