网站大量收购独家精品文档,联系QQ:2885784924

Hadoop大数据技术与项目实战 实训指导书——4.5.4 设备主题表设计及数据加载.pdf

Hadoop大数据技术与项目实战 实训指导书——4.5.4 设备主题表设计及数据加载.pdf

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

山西职业技术学院《Hadoop大数据技术与项目实战》

设备主题表设计及数据加载实训指导书

一、任务描述

在DWT层中对DWS层数据的部分字段进行累积型统计。构建一张设备主题表,通

过NVL函数统计出首次活跃时间、末次活跃时间、累积活跃天数这三个字段的值。

二、能力目标

1.会正确使用NVL空值转换函数

2.能理解ISNOTNULL运算符的含义,会正确使用该运算符

三、任务准备

1.启动HDFS及YARN服务

2.启动Hive元数据服务及客户端

四、任务实施

1.创建设备主题宽表dwt_uv_topic

首先切换到uzest数据库。

hive(default)useuzest;

接下来执行删除同名表操作。

hive(uzest)DROPTABLEIFEXISTSdwt_uv_topic;

然后创建dwt_uv_topic设备主题宽表,该表仍然使用parquet列式存储、拉兹罗压

缩格式,通过location指定该表在HDFS上的存储路径。

hive(uzest)createtableifnotexistsdwt_uv_topic(

`mid_id`stringCOMMENT设备唯一标识,--注意:dwt层中只保

留唯一字段

1

山西职业技术学院《Hadoop大数据技术与项目实战》

`model`stringCOMMENT手机型号,

`brand`stringCOMMENT手机品牌,

`login_date_first`stringCOMMENT首次活跃时间,

`login_date_last`stringCOMMENT末次活跃时间,

`login_count`BIGINTCOMMENT累积活跃天数

)

storedASparquet

location/project/offlineDataWarehouse/uzest.db/dwt/dwt_uv_topic

TBLPROPERTIES(pression=lzo);

2.加载dwt_uv_topic表数据

dwt_uv_topic表中的数据是从DWS层的每日设备行为表dws_uv_detail_daycount中

获取的。数据加载方法是首先确定一个统计日期,数据加载时,设备id、手机品牌、手

机型号三个字段是使用nvl函数从dws_uv_detail_daycount表中直接抽取得到并加载,

每个设备的首次登录时间、末次登录时间、累积天数三个字段是对dws_uv_detail_dayc

ount表的对应字段进行累积型统计得到并加载。

执行数据加载语句时,一次只加载一天的数据,直至30天的数据全部加载完毕。

(1)加载4月1日的数据

执行4月1日数据加载的语句:

hive(uzest)INSERToverwriteTABLEdwt_uv_topic

SELECT

nvl(new.mid_id,old.mid_id),

nvl(new.model,old.model),

nvl(new.brand,old.brand),

nvl(old.login_date_first,2021-04-01),

IF(new.mid_idISNOTNULL,2021-04-01,old.login_date_last),

nvl(old.login_count,0)+IF(new.mid_idISNOTNULL,1,0)

您可能关注的文档

文档评论(0)

xiaobao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档