当前位置: 首页 > news >正文

免费平面设计模板网站百度站长工具后台

免费平面设计模板网站,百度站长工具后台,wordpress 国内教育主题,平面设计有哪些公司文章目录 前置#xff1a;准备数据库一、商品维度表1.1 表结构设计1.2 建表语句1.3 ETL任务脚本 二、优惠券维度表2.1 表结构设计2.2 ETL任务脚本 三、活动维度表3.1 表结构设计3.2 ETL任务脚本 四、地区维度表4.1 表结构设计4.2 ETL任务脚本 五、日期维度表六、用户维度表6.1… 文章目录 前置准备数据库一、商品维度表1.1 表结构设计1.2 建表语句1.3 ETL任务脚本 二、优惠券维度表2.1 表结构设计2.2 ETL任务脚本 三、活动维度表3.1 表结构设计3.2 ETL任务脚本 四、地区维度表4.1 表结构设计4.2 ETL任务脚本 五、日期维度表六、用户维度表6.1 表结构设计6.2 ETL任务脚本 前置准备数据库 [hadoophadoop102 apache-hive-3.1.2-bin]$ bin/hivecreate database dw_dwd; use dw_dwd;一、商品维度表 1.1 表结构设计 序号字段名字段类型字段中文名描述1idSTRINGSKU_ID主键2priceDECIMAL商品价格来自sku表3sku_nameSTRING商品名称来自sku表4sku_descSTRING商品描述来自sku表5weightDECIMAL重量来自sku表6is_saleINT是否在售来自sku表7spu_idSTRINGSPU编号来自sku表8spu_nameSTRINGSPU名称来自spu表9category3_idSTRING三级品类ID来自sku表10category3_nameSTRING三级品类名称来自base_category3表11category2_idSTRING二级品类id来自base_category3表12category2_nameSTRING二级品类名称来自base_category2表13category1_idSTRING一级品类ID来自base_category2表14category1_nameSTRING一级品类名称来自base_category1表15tm_idSTRING品牌ID来自sku表16tm_nameSTRING品牌名称来自base_trademark表17sku_attr_valuesSTRING平台属性JSON串18sku_sale_attr_valuesSTRING销售属性JSON串19create_timeSTRING创建时间JSON串 1.2 建表语句 use dw_dwd;DROP TABLE IF EXISTS dim_sku_full; CREATE EXTERNAL TABLE dim_sku_full (id STRING COMMENT 商品id,price DECIMAL(16,2) COMMENT 商品价格,sku_name STRING COMMENT 商品名称,sku_desc STRING COMMENT 商品描述,weight DECIMAL(16,2) COMMENT 重量,is_sale INT COMMENT 是否在售1是0否,spu_id STRING COMMENT spu编号,spu_name STRING COMMENT spu名称,category3_id STRING COMMENT 三级分类id,category3_name STRING COMMENT 三级分类名称,category2_id STRING COMMENT 二级分类id,category2_name STRING COMMENT 二级分类名称,category1_id STRING COMMENT 一级分类id,category1_name STRING COMMENT 一级分类名称,tm_id STRING COMMENT 品牌id,tm_name STRING COMMENT 品牌名称,sku_attr_values ARRAYSTRUCTattr_id:STRING,value_id:STRING,attr_name:STRING,value_name:STRING COMMENT 平台属性,sku_sale_attr_values ARRAYSTRUCTsale_attr_id:STRING,sale_attr_value_id:STRING,sale_attr_name:STRING,sale_attr_value_name:STRING COMMENT 销售属性,create_time STRING COMMENT 创建时间 ) COMMENT 商品维度表 PARTITIONED BY (dt STRING) STORED AS ORC LOCATION /warehouse/dw_dwd.db/dim_sku_full/ TBLPROPERTIES (orc.compresssnappy);msck repair table dim_sku_full;1.3 ETL任务脚本 [hadoophadoop102 ~]$ cd /home/hadoop/bin/ [hadoophadoop102 bin]$ vim dim_sku_full.sh内容 #!/bin/bash# 如果是输入的日期按照取输入日期如果没输入日期取当前时间的前一天 if [ -n $1 ] ;thendate_y_m_d$1 else date_y_m_ddate -d -1 day %F fietl_sql insert overwrite table dw_dwd.dim_sku_full partition(dt${date_y_m_d}) selectsku.id,sku.price,sku.sku_name,sku.sku_desc,sku.weight,sku.is_sale,sku.spu_id,spu.spu_name,sku.category3_id,c3.name,c3.category2_id,c2.name,c2.category1_id,c1.name,sku.tm_id,tm.tm_name,attr.attrs,sale_attr.sale_attrs,sku.create_time from (selectid,price,sku_name,sku_desc,weight,is_sale,spu_id,category3_id,tm_id,create_timefrom dw_ods.ods_sku_info_fullwhere dt${date_y_m_d} ) sku left join (selectid,spu_namefrom dw_ods.ods_spu_info_fullwhere dt${date_y_m_d} ) spu on sku.spu_idspu.id left join (selectid,name,category2_idfrom dw_ods.ods_base_category3_fullwhere dt${date_y_m_d} ) c3 on sku.category3_idc3.id left join (selectid,name,category1_idfrom dw_ods.ods_base_category2_fullwhere dt${date_y_m_d} ) c2 on c3.category2_idc2.id left join (selectid,namefrom dw_ods.ods_base_category1_fullwhere dt${date_y_m_d} ) c1 on c2.category1_idc1.id left join (selectid,tm_namefrom dw_ods.ods_base_trademark_fullwhere dt${date_y_m_d} ) tm on sku.tm_idtm.id left join (selectsku_id,collect_set(named_struct(attr_id,attr_id,value_id,value_id,attr_name,attr_name,value_name,value_name)) attrsfrom dw_ods.ods_sku_attr_value_fullwhere dt${date_y_m_d}group by sku_id ) attr on sku.idattr.sku_id left join (selectsku_id,collect_set(named_struct(sale_attr_id,sale_attr_id,sale_attr_value_id,sale_attr_value_id,sale_attr_name,sale_attr_name,sale_attr_value_name,sale_attr_value_name)) sale_attrsfrom dw_ods.ods_sku_sale_attr_value_fullwhere dt${date_y_m_d}group by sku_id ) sale_attr on sku.idsale_attr.sku_id; hive -e $etl_sql授予脚本执行权限 [hadoophadoop102 bin]$ chmod x dim_sku_full.sh执行脚本 [hadoophadoop102 bin]$ dim_sku_full.sh二、优惠券维度表 2.1 表结构设计 CREATE EXTERNAL TABLE IF NOT EXISTS dw_dwd.dim_coupon_full (id STRING COMMENT 优惠券编号,coupon_name STRING COMMENT 优惠券名称,coupon_type_code STRING COMMENT 优惠券类型编码,coupon_type_name STRING COMMENT 优惠券类型名称,condition_amount DECIMAL(16, 2) COMMENT 满额数,condition_num BIGINT COMMENT 满件数,activity_id STRING COMMENT 活动编号,benefit_amount DECIMAL(16, 2) COMMENT 减免金额,benefit_discount DECIMAL(16, 2) COMMENT 折扣,benefit_rule STRING COMMENT 优惠规则:满元*减*元满*件打*折,create_time STRING COMMENT 创建时间,range_type_code STRING COMMENT 优惠范围类型编码,range_type_name STRING COMMENT 优惠范围类型名称,limit_num BIGINT COMMENT 最多领取次数,taken_count BIGINT COMMENT 已领取次数,start_time STRING COMMENT 可以领取的开始时间,end_time STRING COMMENT 可以领取的结束时间,operate_time STRING COMMENT 修改时间,expire_time STRING COMMENT 过期时间 ) COMMENT 优惠券维度表 PARTITIONED BY (dt STRING) STORED AS ORC LOCATION /warehouse/dw_dwd.db/dim_coupon_full/ TBLPROPERTIES (orc.compresssnappy);2.2 ETL任务脚本 [hadoophadoop102 hadoop]$ cd /home/hadoop/bin/ [hadoophadoop102 bin]$ vim dim_coupon_full.sh内容 #!/bin/bash# 如果是输入的日期按照取输入日期如果没输入日期取当前时间的前一天 if [ -n $1 ] ;thendate_y_m_d$1 else date_y_m_ddate -d -1 day %F fietl_sql insert overwrite table dw_dwd.dim_coupon_full partition(dt${date_y_m_d}) selectid,coupon_name,coupon_type,coupon_dic.dic_name,condition_amount,condition_num,activity_id,benefit_amount,benefit_discount,case coupon_typewhen 3201 then concat(满,condition_amount,元减,benefit_amount,元)when 3202 then concat(满,condition_num,件打, benefit_discount, 折)when 3203 then concat(减,benefit_amount,元)end benefit_rule,create_time,range_type,range_dic.dic_name,limit_num,taken_count,start_time,end_time,operate_time,expire_time from (selectid,coupon_name,coupon_type,condition_amount,condition_num,activity_id,benefit_amount,benefit_discount,create_time,range_type,limit_num,taken_count,start_time,end_time,operate_time,expire_timefrom dw_ods.ods_coupon_info_fullwhere dt${date_y_m_d} )ci left join (selectdic_code,dic_namefrom dw_ods.ods_base_dic_fullwhere dt${date_y_m_d}and parent_code32 )coupon_dic on ci.coupon_typecoupon_dic.dic_code left join (selectdic_code,dic_namefrom dw_ods.ods_base_dic_fullwhere dt${date_y_m_d}and parent_code33 )range_dic on ci.range_typerange_dic.dic_code; hive -e $etl_sql授予脚本执行权限 [hadoophadoop102 bin]$ chmod x dim_coupon_full.sh执行脚本 [hadoophadoop102 bin]$ dim_coupon_full.sh 2023-12-05三、活动维度表 3.1 表结构设计 CREATE EXTERNAL TABLE IF NOT EXISTS dw_dwd.dim_activity_full (activity_rule_id STRING COMMENT 活动规则ID,activity_id STRING COMMENT 活动ID,activity_name STRING COMMENT 活动名称,activity_type_code STRING COMMENT 活动类型编码,activity_type_name STRING COMMENT 活动类型名称,activity_desc STRING COMMENT 活动描述,start_time STRING COMMENT 开始时间,end_time STRING COMMENT 结束时间,create_time STRING COMMENT 创建时间,condition_amount DECIMAL(16, 2) COMMENT 满减金额,condition_num BIGINT COMMENT 满减件数,benefit_amount DECIMAL(16, 2) COMMENT 优惠金额,benefit_discount DECIMAL(16, 2) COMMENT 优惠折扣,benefit_rule STRING COMMENT 优惠规则,benefit_level STRING COMMENT 优惠级别 ) COMMENT 活动维度表 PARTITIONED BY (dt STRING) STORED AS ORC LOCATION /warehouse/dw_dwd.db/dim_activity_full/ TBLPROPERTIES (orc.compresssnappy);3.2 ETL任务脚本 vim dim_activity_full.sh内容 #!/bin/bash# 如果是输入的日期按照取输入日期如果没输入日期取当前时间的前一天 if [ -n $1 ] ;thendate_y_m_d$1 else date_y_m_ddate -d -1 day %F fietl_sql insert overwrite table dw_dwd.dim_activity_full partition(dt${date_y_m_d}) selectrule.id,info.id,activity_name,rule.activity_type,dic.dic_name,activity_desc,start_time,end_time,create_time,condition_amount,condition_num,benefit_amount,benefit_discount,case rule.activity_typewhen 3101 then concat(满,condition_amount,元减,benefit_amount,元)when 3102 then concat(满,condition_num,件打, benefit_discount, 折)when 3103 then concat(打, benefit_discount,折)end benefit_rule,benefit_level from (selectid,activity_id,activity_type,condition_amount,condition_num,benefit_amount,benefit_discount,benefit_levelfrom dw_ods.ods_activity_rule_fullwhere dt${date_y_m_d} )rule left join (selectid,activity_name,activity_type,activity_desc,start_time,end_time,create_timefrom dw_ods.ods_activity_info_fullwhere dt${date_y_m_d} )info on rule.activity_idinfo.id left join (selectdic_code,dic_namefrom dw_ods.ods_base_dic_fullwhere dt${date_y_m_d}and parent_code31 )dic on rule.activity_typedic.dic_code; hive -e $etl_sql授予脚本执行权限 [hadoophadoop102 bin]$ chmod x dim_activity_full.sh执行脚本 [hadoophadoop102 bin]$ dim_activity_full.sh四、地区维度表 4.1 表结构设计 CREATE EXTERNAL TABLE IF NOT EXISTS dw_dwd.dim_province_full (id STRING COMMENT 省份ID,province_name STRING COMMENT 省份名称,area_code STRING COMMENT 地区编码,iso_code STRING COMMENT 旧版国际标准地区编码供可视化使用,iso_3166_2 STRING COMMENT 新版国际标准地区编码供可视化使用,region_id STRING COMMENT 地区ID,region_name STRING COMMENT 地区名称 ) COMMENT 地区维度表 PARTITIONED BY (dt STRING) STORED AS ORC LOCATION /warehouse/dw_dwd.db/dim_province_full/ TBLPROPERTIES (orc.compresssnappy);4.2 ETL任务脚本 [hadoophadoop102 bin]$ vim dim_province_full.sh内容 #!/bin/bash# 如果是输入的日期按照取输入日期如果没输入日期取当前时间的前一天 if [ -n $1 ] ;thendate_y_m_d$1 else date_y_m_ddate -d -1 day %F fietl_sql insert overwrite table dw_dwd.dim_province_full partition(dt${date_y_m_d}) selectprovince.id,province.name,province.area_code,province.iso_code,province.iso_3166_2,region_id,region_name from (selectid,name,region_id,area_code,iso_code,iso_3166_2from dw_ods.ods_base_province )province left join (selectid,region_namefrom dw_ods.ods_base_region )region on province.region_idregion.id; hive -e $etl_sql授予脚本执行权限 [hadoophadoop102 bin]$ chmod x dim_province_full.sh执行脚本 [hadoophadoop102 bin]$ dim_province_full.sh五、日期维度表 1、上传日期数据文件到HDFS的临时目录 /tmp/tmp_dim_date_info/ 2、执行下面SQL -- 创建临时表 CREATE EXTERNAL TABLE IF NOT EXISTS default.tmp_dim_date_info (date_id STRING COMMENT 日,week_id STRING COMMENT 周ID,week_day STRING COMMENT 周几,day STRING COMMENT 每月的第几天,month STRING COMMENT 第几月,quarter STRING COMMENT 第几季度,year STRING COMMENT 年,is_workday STRING COMMENT 是否是工作日,holiday_id STRING COMMENT 节假日 ) COMMENT 时间维度表 ROW FORMAT DELIMITED FIELDS TERMINATED BY \t LOCATION /tmp/tmp_dim_date_info/;-- 创建日期表 CREATE EXTERNAL TABLE IF NOT EXISTS dw_dwd.dim_date (date_id STRING COMMENT 日期ID,week_id STRING COMMENT 周ID,一年中的第几周,week_day STRING COMMENT 周几,day STRING COMMENT 每月的第几天,month STRING COMMENT 一年中的第几月,quarter STRING COMMENT 一年中的第几季度,year STRING COMMENT 年份,is_workday STRING COMMENT 是否是工作日,holiday_id STRING COMMENT 节假日 ) COMMENT 日期维度表 STORED AS ORC LOCATION /warehouse/dw_dwd.db/dim_date/ TBLPROPERTIES (orc.compresssnappy);-- 导入到正式表 insert overwrite table dw_dwd.dim_date select * from default.tmp_dim_date_info;六、用户维度表 动态分区、拉链表 6.1 表结构设计 CREATE EXTERNAL TABLE IF NOT EXISTS dw_dwd.dim_user_full (id STRING COMMENT 用户ID,name STRING COMMENT 用户姓名,phone_num STRING COMMENT 手机号码,email STRING COMMENT 邮箱,user_level STRING COMMENT 用户等级,birthday STRING COMMENT 生日,gender STRING COMMENT 性别,create_time STRING COMMENT 创建时间,operate_time STRING COMMENT 操作时间 ) COMMENT 用户维度表 PARTITIONED BY (dt STRING) STORED AS ORC LOCATION /warehouse/dw_dwd.db/dim_user_full/ TBLPROPERTIES (orc.compresssnappy);6.2 ETL任务脚本 vim dim_user_full.sh内容 #!/bin/bash# 如果是输入的日期按照取输入日期如果没输入日期取当前时间的前一天 if [ -n $1 ] ;thendate_y_m_d$1 else date_y_m_ddate -d -1 day %F fietl_sql insert overwrite table dw_dwd.dim_user_full partition (dt ${date_y_m_d}) select id,name,phone_num,email,user_level,birthday,gender,create_time,operate_time from dw_ods.ods_user_info_full where dt ${date_y_m_d} hive -e $etl_sql授予脚本执行权限 [hadoophadoop102 bin]$ chmod x dim_user_full.sh执行脚本 [hadoophadoop102 bin]$ dim_user_full.sh
http://www.zqtcl.cn/news/122987/

相关文章:

  • 白云区网站开发公司备案不关闭网站的方法
  • 男的做那个视频网站家用电脑可以做网站服务器
  • 网站建设的行业客户烟台市未成年思想道德建设网站
  • 设计个网站要多少钱鼓楼网站开发
  • 东莞外贸网站搭建制作北京app开发制作
  • 优化网站公司外包微信商城怎么开店
  • 网站设计的导航栏怎么做东莞seo网络优化
  • wordpress直接上传视频网站吗做网站软件
  • 电脑维修网站模板下载来个网站吧好人一生平安2021
  • 做公益选哪个网站好网站建设方案多少钱
  • 丰台做网站的公司vs2015 手机网站开发
  • 宝思哲手表网站qq官网登录入口网页版
  • 二手书网站开发设计太原建设网站的公司
  • 江门网站seo推广qq代挂网站建设
  • 合肥制作网站企业做文字logo的网站
  • php 网站提速有没有帮人做简历的网站
  • 九江建网站报价比特币网站做任务
  • 电子商务网站开发目的和意义网站建设湖南岚鸿建设
  • 网站改版提交给百度个人定做衣服店
  • 网站接广告网站用途说明
  • 中兴豫建设管理有限公司网站中小企业网站建设济南兴田德润o厉害吗
  • 枣庄有做网站的吗网站 关键词 多少个
  • 广州10大网站服务品牌做网站买了域名之后
  • 北京网站备案电商网站建设考试
  • 微信官网网站虚拟主机网站被挂马
  • 怎么看网站是不是h5做的建设网站的目的和功能
  • 购销网站建设视频百度云中国数据网
  • 网站运营队伍与渠道建设成都开发网站建设
  • 手机网站图片宽度做儿童交互网站
  • 商家入驻型网站建设中小型企业查询网址