exists hive中如何使用_HIVE使用基础
查看所有表: ??show tables;
查看表結構: ? desc 表名
查看表的分區: ?show partitions 表名;
查看UDF:
HIVE允許用戶使用UDF(user defined function)對數據進行處理。
查看所有UDF:show functions
某個具體UDF說明:describe function UDF名
常見建表語句:
(這是內部表)
--drop table if exists DWS_SELLER_SHOP_STOCK_D;
create table if not exists BDP_DWS_SELLER_SHOP_STOCK_D(
THE_DT string,
seller_id decimal,
shop_id decimal comment '商店ID',
auction_stock bigint
)
COMMENT 'vender subject: stock of shop group by day' ?----注釋
partitioned by(dt string) ? ? ? ? ? ----使用什么分區
row format DELIMITED ? ? ? ? ? ? -----用戶在建表的時候可以自定義 SerDe 或者使用自帶的 ? ? ? ? ? ? ? ? ? ? ? ? ? ----SerDe。如果沒有指定 ROW FORMAT 或者 ROW FORMAT ? ? ? ? ? ? ? ? ? ? ? ? ? ----DELIMITED,將會使用自帶的 SerDe。
---SerDe是Serialize/Deserilize的簡稱,目的是用于序列化和反序列 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -----化。
FIELDS TERMINATED BY '\t' ? ? ? ? ?-----文件使用間隔符
LINES TERMINATED BY '\n' ? ? ? ? ?------行使用間隔符
STORED AS SEQUENCEFILE; ? ? ? ? ? -----如果文件數據是純文本,可以使用 STORED AS ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? -----TEXTFILE。如果數據需要壓縮,使用 STORED AS ? ? ? ? ? ? ? ? ? ? ? ? ? ? -----SEQUENCE 。
外部表比內部表多了一個 ?external 關鍵字
多了一行 ?location '/home/wyp/external'。
最后歸納一下Hive中表與外部表的區別:1、在導入數據到外部表,數據并沒有移動到自己的數據倉庫目錄下,也就是說外部表中的數據并不是由它自己來管理的!而表則不一樣;2、在刪除表的時候,Hive將會把屬于表的元數據和數據全部刪掉;而刪除外部表的時候,Hive僅僅刪除外部表的元數據,數據是不會刪除的!那么,應該如何選擇使用哪種表呢?在大多數情況沒有太多的區別,因此選擇只是個人喜好的問題。但是作為一個經驗,如果所有處理都需要由Hive完成,那么你應該創建表,否則使用外部表!
UDTF(User-Defined Table-Generating Functions)
用來解決 輸入一行輸出多行(On-to-many maping) 的需求。
UDAF(User- Defined Aggregation Funcation)
1、Hive查詢數據時,有些聚類函數在HQL沒有自帶,需要用戶自定義實現。
2、用戶自定義聚合函數: Sum, Average…… n – 1
UDF(user defined function)對數據進行處理
總結
以上是生活随笔為你收集整理的exists hive中如何使用_HIVE使用基础的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 获取inout框中未改变值的数据_数据分
- 下一篇: 添加icon_Ubuntu下为AppIm
