最近2018中文字幕在日韩欧美国产成人片_国产日韩精品一区二区在线_在线观看成年美女黄网色视频_国产精品一区三区五区_国产精彩刺激乱对白_看黄色黄大色黄片免费_人人超碰自拍cao_国产高清av在线_亚洲精品电影av_日韩美女尤物视频网站

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Hive分區(qū)表常用語法有哪些

這篇文章給大家分享的是有關Hive分區(qū)表常用語法有哪些的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)建站專注于企業(yè)營銷型網(wǎng)站、網(wǎng)站重做改版、施甸網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5技術、商城開發(fā)、集團公司官網(wǎng)建設、外貿網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為施甸等各大城市提供網(wǎng)站開發(fā)制作服務。

前言:

如果對分區(qū)表了如指掌,那么非分區(qū)表的語法就簡單多了,只需將 PARTITION相關字段去掉就可以了。

1. 創(chuàng)建hive分區(qū)表

//不指定LOCATION

CREATE EXTERNAL TABLE 

IF NOT EXISTS hive_partition_01(

ROWKEY STRING,

YEAR INT,

MONTH INT,

DAY INT,

HOUR INT,

MINUTE INT)

PARTITIONED BY (AGE INT) 

ROW FORMAT DELIMITED FIELDS 

TERMINATED BY ','  STORED AS TEXTFILE;    

注:不指定LOCATION,默認為/user/hive/warehouse/*.db/table_name

//指定LOCATION

CREATE EXTERNAL TABLE 

IF NOT EXISTS hive_partition_02(

ROWKEY STRING,

YEAR INT,

MONTH INT,

DAY INT,

HOUR INT,

MINUTE INT)

PARTITIONED BY (AGE INT) 

ROW FORMAT DELIMITED FIELDS 

TERMINATED BY ','  

STORED AS TEXTFILE 

LOCATION 'hdfs://master:8020/user/hive/warehouse/hive_hbase.db/hive_partition_01' ;

注:創(chuàng)建指定數(shù)據(jù)路徑的外部分區(qū)表要添加分區(qū)后才能查到數(shù)據(jù),可在hive命令行執(zhí)行修復命令: msck repair table tablename。 

2. 創(chuàng)建分區(qū)

ALTER TABLE hive_partition_01 ADD PARTITION(AGE= 1998);  

注:創(chuàng)建分區(qū)后 HDFS 增加目錄 age=1998

3. 刪除分區(qū)

ALTER TABLE hive_partition_01 DROP IF EXISTS PARTITION(age =1998);   

注:外部表刪除分區(qū)后HDFS分區(qū)數(shù)據(jù)不會被刪除

4. 向HIVE表加載數(shù)據(jù)(四種方式)

4.1 從HDFS上導入數(shù)據(jù)到Hive表

//加載某個目錄下所有數(shù)據(jù),只適合非分區(qū)表

LOAD DATA INPATH '/emp.txt' OVERWRITE INTO TABLE hive_01; 

//INTO 追加寫

LOAD DATA INPATH '/emp.txt' INTO TABLE hive_partition_01 PARTITION(AGE=1998);  

注:從HDFS加載數(shù)據(jù),加載后emp.txt文件消失,屬于copy操作

//OVERWRITE INTO 覆蓋寫

LOAD DATA INPATH '/emp.txt' OVERWRITE INTO TABLE hive_partition_01 PARTITION(AGE=1998);    

LOAD DATA INPATH '/emp.txt' [OVERWRITE] INTO TABLE hive_partition_01 PARTITION(AGE=1999); 

  

注:執(zhí)行該語句若分區(qū)不存在會自動創(chuàng)建

4.2 從本地文件系統(tǒng)中導入數(shù)據(jù)到Hive表

// INTO 追加寫

LOAD DATA LOCAL INPATH '/home/emp.txt' INTO TABLE hive_partition_01 PARTITION(AGE=1999);  

// OVERWRITE INTO 覆蓋寫 

LOAD DATA LOCAL INPATH '/home/emp.txt' OVERWRITE INTO TABLE hive_partition_01 PARTITION(AGE=1999);    

4.3 從別的表中查詢數(shù)據(jù)并導入到Hive表中

// INTO 追加寫

insert INTO table hive_partition_01 partition (AGE=1999) select rowkey, year, month ,day , hour , minute from hive_partition_02;

注:hive_partition_02 表 select 的字段必須與 hive_partition_01 表對應,此條語句會執(zhí)行MapReduce任務

//OVERWRITE 覆蓋寫

insert OVERWRITE table hive_partition_01 partition (AGE=1999) select rowkey, year, month ,day , hour , minute from hive_partition_02;

注:HDFS分區(qū)目錄下的文件都會被覆蓋寫

4.4 創(chuàng)建表時從別的表查詢數(shù)據(jù)到所創(chuàng)建的表

create table hive_partition_03 as select rowkey, year, month from hive_partition_01;   

注:此條語句會執(zhí)行MapReduce任務,可select部分字段 

4.5 支持多表插入

from hive_partition_01

    > insert into table hive_partition_02

    > partition(age=1998)

    > select rowkey, year, month ,day , hour , minute

    > insert into table hive_partition_03

    > select rowkey, year, month;

注:向HDFS目錄相同路徑下上傳相同文件,文件名會添加copy字樣。如下:

/user/hive/warehouse/hive_hbase.db/hive_partition_01/age=1999/emp.txt

/user/hive/warehouse/hive_hbase.db/hive_partition_01/age=1999/emp_copy_1.txt

注:hive 字段不區(qū)分大小寫

感謝各位的閱讀!關于“Hive分區(qū)表常用語法有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!


新聞名稱:Hive分區(qū)表常用語法有哪些
地址分享:http://fisionsoft.com.cn/article/iggddj.html