对应流程中的第二项,在电商业务里数据加载到订单表和支付流水表;第三项,将电商网站日志加载到Hive;将数据采集后,需要进一步建立相应的表格,再将数据添加进去,做更深层次的数据处理。日志分为两部分:一个是启动日志,另一个是事件日志。现在将启动日志加载到启动表中,用于生成用户活跃度表。将事件日志加载到事件基础明细表中,用于生成事件基础表,进而分化成为商品单击表、收藏表、商品详情表和评论表。
①对应图10.2 中Hive 的数据分层,创建DWD 层的启动表,将启动日志中的数据导入启动表中。
A.建表语句如下:
B.向启动表导入数据。
②对应图10.2 中Hive 的数据分层,创建DWD 层事件日志基础明细表,将事件日志导入事件日志表中。
A.建表语句如下:
event_name 和event_json 用来对应事件名和整个事件。这里将原始日志里一对多的形式拆分,操作时需要用编码将原始日志展开。
③创建类BaseUDF 和类EventUDTF 将原始事件日志展开。
A.pom.xml 文件内容如下:
B. 创建包名:com. huawei. udf 和com. huawei. udtf。在com. huawei. udf 包下创建类BaseUDF。其代码如下:
C.在“com.huawei.udtf”创建类EventUDTF。
D.编译完成后单击Package 打包。在HDFS 上创建目录,将jar 包从本地上传HDFS 分布
式文件系统;然后创建临时函数,创建临时函数与开发好的Java Class 关联。
④向日志基础明细表导入数据。
⑤将日志基础明细表拆分成四张表,分别是商品点击表、商品详情表、收藏表和评论表。以DWD 层的商品点击表为例,创建商品点击表,将事件日志表中的部分信息导入进来。建表语句如下:
⑥导入数据方法如下:
(www.xing528.com)
⑦用与商品点击表同样的方法创建DWD 层的详情页表,创建DWD 评论表和DWD 收藏表,并导入数据。
⑧创建DWS 层的日活跃设备表。
A.日活跃设备表建表语句如下:
B.进行日活跃设备表数据导入。以用户单日访问为Key 进行聚合,如果某个用户在一天中使用了两种操作系统、两个系统版本、多个地区,登录不同账号,只取其中之一。
⑨创建DWS 周活跃设备表。根据日用户访问明细,获得周用户访问明细。
A.建表语句如下:
B.周活跃设备表数据导入。
⑩另一条线,由系统的业务数据生成业务ODS 层订单表,完全仿照业务数据库中的表字段,一模一样地创建ODS 层对应表,然后将数据导入。
A.建表语句如下:
B.由系统的业务数据生成业务ODS 层创建支付流水表,然后将数据导入。
⑪业务DWD 层创建订单表。
A.建表语句如下:
B.订单表数据导入,语句如下:
⑫业务DWD 层创建支付流水表。
A.支付流水表建表语句如下:
B.DWD 层支付流水表数据导入语句如下:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。