hive null和建立表的模板

2021-07-11 18:18:22 字數 1774 閱讀 5868

最近,一直在寫 hive

1)create_table lzo格式

2.  執行shell,請使用全路徑,如 sh/data3/dmp_online/dmp/dw/mds/purpow/create_table/mds_dm_purpow_source_his.sh;

3.  dm工作組時,$應修改為$;

shell名稱如果不是hive表名,請手工指定變數$、$。

#獲取當前工作組(dw或dm)

echo $ | grep -q "/dmp/dm/"

if [ $? -eq 0 ]

then

work_group="dm"

else

work_group="dw"

fi#載入配置檔案

cd $(dirname `ls -l $0 |awk ''`)/..

shellpath=`pwd|awk -f $ ''`

cd $

. common/conf/.hive_config.sh

#table_level=mds

#table_name=mds_dm_purpow_his

#建立表資訊

$hive<< eof

use $;

drop table $;

create external table $

( cookie string comment '使用者cookie',

price int comment '使用者對應車型**',

source int comment '**'

)partitioned by(dt string, type string)

row format delimited fields terminated by '\t' lines terminated by '\n'

stored as inputformat 'com.hadoop.mapred.deprecatedlzotextinputformat'

outputformat 'org.apache.hadoop.hive.ql.io.hiveignorekeytextoutputformat'

location '$/$/$';

alter table $ set serdeproperties('serialization.null.format'='');

eof

create_tablercfile

格式:stored as rcfile

create_tabletxt

格式:

stored as textfile

附:關於 hive null的問題:

hive中null預設是以

'\n'

表示的;可以通過alter table table_name set serdeproperties('serialization.null.format' = '');修改空值描述符

hive中分割槽字段如果為null需注意

使用dynamic partition,如果分割槽欄位為null,資料會放到乙個特殊的分割槽,這個分割槽由引數「hive.exec.default.partition.name」控制,預設為「__hive_default_partition__」。

VBA之用模板建立表

有這樣乙個模板,想在此模板的基礎上,新建很多sheet,每個sheet對應乙個日期,並且表裡的報表日期和工作表名字一樣,如何去實現呢 sheets sheets.count name 5月 i 日 sheets sheets.count range e5 2016 5 i next end sub ...

順序表和煉表的模板

c 引入模板是為了更好的 復用,模板這邊分為兩個大塊.1.模板函式 2.模板類 我們今天來介紹模板類的應用 順序表和煉表 單鏈表為例 模板的順序表 templateclass seqlist seqlist seqlist const seqlist s size s.size capacity s...

oracle建立表空間和表

oracle安裝完後,其中有乙個預設的資料庫,除了這個預設的資料庫外,我們還可以建立自己的資料庫。對於初學者來說,為了避免麻煩,可以用 database configuration assistant 嚮導來建立資料庫。建立完資料庫後,並不能立即在資料庫中建表,必須先建立該資料庫的使用者,並且為該使...