Hive建立表的幾種方式

2021-07-24 09:33:12 字數 2609 閱讀 1386

hive執行的三種方式:

1. 用hive cli

2. 終端執行hive命令: hive -e hive語句

3. 終端執行hive指令碼: hive -f  hive指令碼

如果需要通過jdbc來連線hive,需要在終端開啟hiveserver2服務

nohup hive --service hiveserver2 &

netstat -ntpl | grep 10000 // 檢視該程序是否啟動

建立表的幾種方式:

1. 建立內錶:

create table customer(

customerid int,

firstname string,

lastname string,

birthday timestamp)

row format delimited fields terminated by ',';

向表中匯入linux本地資料:

load data local inpath '/opt/custorm' into table customer;
2. 建立外表:

create external table salaries(

gender string,

age int,

salary double,

zip int)

row format delimited fields terminated by ',';

3. 建立靜態分割槽表:

create table employees(

id int,

name string)

partitioned by (dept string)

row format delimited fields terminated by ',';

向表中匯入hdfs上的檔案:

load data inpath '/user/root/employees.txt' overwrite into table employees;
4. 建立動態分割槽表:

引數設定(直接在cli下輸入): 

set hive.exec.dynamic.partition=true;

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

建立動態分割槽表的**與靜態分割槽表一樣,只是多了上面兩行設定。

create table student_dynamic(

id int,

name string,

classes string)

partitioned by (class string)

row format delimited fields terminated by '\t';

資料匯入動態分割槽表:

insert overwrite table student_dynamic_partition (class) select *, classes from student;
上面的**,可以自動將classes中不同類別的資料自動分割槽

5. 建立帶有資料的表:

create table stucopy as select id,name,score from student;

資料匯入的三種方式:

1. 從本地匯入資料到hive表

2. 從hdfs匯入資料到hive表(會將hdfs上的檔案mv到建表時指定的目錄下,而不是copy)

3. 從其他表中查詢並匯入

4. 多表插入

from emp insert into table empcopy1

select id, name limit 5

insert into table empcopy2

select name,salary where salary > 10000.0;

資料匯出到本地:

insert overwrite local directory '/opt/customer_exp' 

row format delimited fields terminated by ','

select * from employees limit 5;

資料匯出到hdfs:

insert overwrite directory '/user/root/customer_exp' 

row format delimited fields terminated by ','

select * from employees limit 5;

hive中不允許刪除存在表的資料庫,需要強制刪除:

drop database if exists test cascate;

Hive建立表的基本方式

建立表的方式 方式一 create load create external table table name col1 name col1 type,coln name coln type row format delimited fields terminated by t load載入資料 l...

hive表匯入資料的幾種方式

以前學習hive的時候這些知識點應該是涉及到的,但是時間久了沒有用就會忘記,今天借這個機會來複習一下相關知識。下面總結一下hive表匯入資料的四種方式 1 從本地檔案系統中匯入資料到hive表 2 從hdfs上匯入資料到hive表 3 從別的表中查詢出相應的資料並匯入到hive表中 4 在建立表的時...

Hive 建立表方式以及表的型別

1 常規方式 create table table name 字段 2 通過子查詢方式 類似於mysql中檢視的建立方式 create table table name as select 3 建立類似表 只有表結構,沒有資料 create table new table name like old...