一个标准hive任务常用的配置项

配置一个hive任务,或者执行.hql任务标准的配置文件如下:

1.要有描述项,方便后期维护。

2.要有常见关于任务的技术参数配置

3.代码部分

--@Name:SOR_EVT_TBL_FB_CUST
--@Description:区块链黑名单抽数
--@Type:日汇总
--@Target:FDM_SOR.SOR_EVT_TBL_FB_CUST
--@source:FDM_SSA.TSSA_SMFDB_TBL_FB_CUST
--@Author:robot
--@CreateDate:2018-05-18
--@ModifyBy:
--@ModifyDate:2018-04-18
--@ModifyDesc:修改目标表
--@Copyright suning

-- 设置作业名
set mapred.job.name = SOR_EVT_TBL_FB_CUST (${hivevar:statis_date});
-- 每个Map最大输入大小
set mapred.max.split.size = 300000000;
-- 每个Map最小输入大小
set mapred.min.split.size = 100000000;
-- 执行Map前进行小文件合并
set hive.input.format = org.apache.hadoop.hive.ql.io.CombineHiveInputFormat;
-- hive自动根据sql,选择使用common join或者map join
set hive.auto.convert.join = false;
-- 在Map-only的任务结束时合并小文件
set hive.merge.mapfiles = true;
-- 在Map-Reduce的任务结束时不合并小文件
set hive.merge.mapredfiles = false;
-- 合并文件的大小
set hive.merge.size.per.task = 300000000;


USE fdm_sor;
add jar /home/bigdata/software/hive/ext-lib/suning-hive-inputformat.jar;

insert overwrite table FDM_SOR.SOR_EVT_TBL_FB_CUST           
SELECT
       ID,
       FB_CUST_CODE,
       FBI_CUST_CODE,
       CUST_NAME,
       CUST_TYPE,
       CUST_GROUP,
       CUST_GROUPS,
       INDUSTRY,
       EMER_CONTACT,
      
       RESERVE_VARCHARA,
       RESERVE_VARCHARB,
       RESERVE_VARCHARC,
       SIGN_CODE_FLAG,
       from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss') AS etl_create_time,
       from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss') AS etl_update_time
FROM   fdm_ssa.TSSA_SMFDB_TBL_FB_CUST T1
where  statis_date='${statisdate}';

你可能感兴趣的:(Hive编程和数据仓库)