1.向表中裝載資料
load data local inpath '$/california-employees'
overwrite into table employees
partition (country='us',state='ca');
2.通過查詢語句向表中插入資料
insert overwrite/into table employees
partition (country='us',state='or')
select * from staged_employees se
where se.cnty='us' and se.st='or';
全表掃瞄一次
form staged_employees se
insert overwrite table employees
partition (country='us',state='or')
select * where se.cnty='us' and se.st='or'
insert overwrite table employees
partition (country='us',state='ca')
select * where se.cnty='us' and se.st='ca'
insert overwrite table employees
partition (country='us',state='il')
select * where se.cnty='us' and se.st='il';
動態分割槽插入
insert into table employees
partition (country,state)
select ...,se.cnty,se.st
from staged_employees se;
靜態動態分割槽混合
insert into table employees
partition (country='us',state)
select ...,se.cnty,se.st
from staged_employees se
where se.cnty='us';
hive.exec.dynamic.partition
預設false,設定成true,表示開啟動態分割槽功能
hive.exec.dynamic.partition.mode
預設strict,設定成nostrict,表示允許所有分割槽都是動態的
hive.exec.max.dynamic.partitions.pernode
hive.exec.max.dynamic.partitions
預設+1000,乙個動態分割槽建立語句可以建立的最大動態分割槽個數
hive.exec.max.created.files
預設100000,全域性可以建立的最大檔案個數
3.單個查詢語句建立表並載入資料
create table ca_employees
as select name,salary,address
from employees se
where se.state='ca';
4.匯出資料
haddop fs -cp source_path target_path
insert overwrite local directory '/tmp/ca_employees'
select name,salary,address
from employees
where se.state='ca'
指定多個輸出資料夾目錄
from staged_employees se
insert overwrite directory '/tmp/or_employees'
select * where se.cty='us' and se.st='or'
insert overwrite directory '/tmp/ca_employees'
select * where se.cty='us' and se.st='ca'
insert overwrite directory '/tmp/il_employees'
select * where se.cty='us' and se.st='il';
hive資料操作
select from employees 在這種情況下可以簡單的讀取employees對應的儲存目錄下的檔案,然後輸出到格式化後的內容到控制台 對於where語句中的過濾條件只是分割槽字段這種情況 無論是否使用limit語句限制輸出記錄數 也無需mapreduce過程的 select from e...
hive資料操作
vi tb hive.txt 12 34 56 7 12 13 41 2 31 17 21 3 71 2 31 1 12 34 11 2 34 root namenode 82 hive w hive shell 建表結構 hive create table tb hive a int,b int,...
hive 資料操作
日常工作中,經常涉及到將本地檔案寫入hive表,已供查詢計算,或將hive表的資料匯出為本地檔案。1 第一步 建立hive 表 create table if not exists user.table user user id int act time string partitioned by ...