hive 各種表及資料匯入

2021-06-28 23:58:36 字數 1516 閱讀 5100

# 內部表 (預設)

create table emp_info(id bigint, name string, income double)

row format delimited

fields terminated by '\t';

# 外部表

create external emp_info_ext(id bigint, name string, income double)

row format delimited

fields terminated by '\t'

location '/external/emp_info_ext';

# 分割槽表

create table emp_info_part(id bigint, name string, income double)

partitioned by (year string)

row format delimited

fields terminated by '\t';

//從本地匯入資料到hive的表中(實質就是將檔案上傳到hdfs中hive管理目錄下)

load data local inpath '/home/hadoop/data.txt' into emp_info tab_ext;

//從hdfs上匯入資料到hive表中(實質就是將檔案從原始目錄移動到hive管理的目錄下)

load data inpath 'hdfs://ns1/aa/bb/data.log' into table emp_info;

//使用select語句來批量插入資料

insert overwrite table emp_info select * from emp_info2;

外部表的資料載入

hadoop fs -put data.log '/external/emp_info_ext'

year 字段無需在表中出現,只要在載入資料時指字即可

load data local inpath '/home/hadoop/data.log' overwrite into table emp_info_ext

partition(year='1990');

load data local inpath '/home/hadoop/data2.log' overwrite into table emp_info_ext

partition(year='2000');

//從hdfs上匯入資料到hive表中(實質就是將檔案從原始目錄移動到hive管理的目錄下)

load data inpath 'hdfs://ns1/aa/bb/data.log' into table emp_info;

hive 表插入 匯入資料

1 覆蓋現有分割槽資料,如果沒有該指定分割槽,新建該分割槽,並且插入資料 insert overwrite table 庫名.表名 partition dt 2018 09 12 name tom select from 庫名.表名 where.2 向現有的分割槽插入資料 之前的資料不會被覆蓋 in...

遷移hive表及hive資料

公司hadoop集群遷移,需要遷移所有的表結構及比較重要的表的資料 跨雲服務機房,源廣州機房,目標北京機房 1 遷移表結構 1 老hive中匯出表結構 hive e use db show tables tables.txt bin bash cat tables.txt while read ea...

hive 資料匯入表的方式

建立學生表,將 t 作為分割 create table student id int name string,string row format delimited fields terminated by t 本地檔案data.txt如下 t分割 1 zhangsan man 2 lisi man...