电商项目之用户启动 DWS 表 SQL 实现|学习笔记

简介: 快速学习电商项目之用户启动 DWS 表 SQL 实现

开发者学堂课程【新电商大数据平台2020最新课程电商项目之用户启动 DWS 表 SQL 实现】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/640/detail/10540


电商项目之用户启动 DWS 表 SQL 实现

 

用户启动 DWS

基于明细表进行公共汇总,根据对应的维度进行汇总,DWS 是单维度的,它只基于上面的某一个表,这个表就是DWD 刚创建的明细表。

启动次数是指计算用户的启动次数,在做数据分组的时候,不会按照 user id 分类,因为用户 ID 可能会有多个,它的启动次数相当于求它的 comment 有多少次。

这需要统一,当前用户启动多少次,另外的用户启动多少次,ID如果会变的话,这时候不能归为一类的 ID,在做的时候就会有问题,这时候虽然说是一个设备,但是每次 ID 都会变,所以在使用的时候,获取的是 log 表和 log 数据,所以获取的时候需要用统一的 ID,设备 ID 是比较统一的,根据设备号来进行 comment 聚合,然后再根据设备号进行分组。

单独将设备号拿出来,进行 comment,就可以求出启动的次数,用户用同一个设备启动多少次就是启动次数,这个不需要去除。在获取用户启动次数的时候不需要去除,只需要统计当前用户使用这个设备启动了多少次,这个时候相对来说比较简单一些,

如下进行操作

hives create database dws _nshop;oK

Time taken : 0.038 seconds

hive> create external table if not exists dws_nshop.dws_nshop_ulog_launch(

user_id string comment"用户id' ,

device_num string comment '设备号',

device_type string comment"设备类型",

os string comment"手机系统",

os_version string comment '手机系统版本',

manufacturer string comment"手机制造商',

carrier string commentT'电信运营商",

network_type string corenent "网络类型'

area_code string comment "地区编码",

launch_count int comment"启动次数">)

partitioned by (bdp_day string)

> stored as parquet

>location" /data/nshop/dws/user/dws_nshop_ulog_launch/ " ;

这张表依赖用户启动日志表,用户启动是对用户启动日志表进行工作汇总的力度支持,

接下来在笔记进行编写

Insert overwrite table dws_nshop.dws_nshop_ulog_launch partition( bdp_day= ' 2020032)

Elect

user_id ,

device_num ,

device_type,

os ,

os_version ,

manufacturer,

carrier ,

network_type,

area_code,

count(device_num) over(partition by device_num)as launch_countfrom dwd_nshop.dwd_nshop_actlog_launch

where

bdp_day= " 20200321"

相关文章
|
3月前
|
SQL 分布式计算 DataWorks
DataWorks操作报错合集之新建项目的元数据的sql报错,如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
1月前
|
SQL 关系型数据库 MySQL
Go语言项目高效对接SQL数据库:实践技巧与方法
在Go语言项目中,与SQL数据库进行对接是一项基础且重要的任务
59 11
|
3月前
|
监控 Java 开发者
揭秘Struts 2性能监控:选对工具与方法,让你的应用跑得更快,赢在起跑线上!
【8月更文挑战第31天】在企业级应用开发中,性能监控对系统的稳定运行至关重要。针对流行的Java EE框架Struts 2,本文探讨了性能监控的工具与方法,包括商用的JProfiler、免费的VisualVM以及Struts 2自带的性能监控插件。通过示例代码展示了如何在实际项目中实施这些监控手段,帮助开发者发现和解决性能瓶颈,确保应用在高并发、高负载环境下稳定运行。选择合适的监控工具需综合考虑项目需求、成本、易用性和可扩展性等因素。
44 0
|
4月前
|
SQL 监控 关系型数据库
PolarDB产品使用问题之SQL防火墙怎么拦截没有指定WHERE条件的特定表的SQL语
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
SQL 分布式计算 DataWorks
MaxCompute操作报错合集之使用sql查询一个表的分区数据时遇到报错,该如何解决
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。
|
3月前
|
SQL 存储 Oracle
MySQL 项目中 SQL 脚本更新、升级方式,防止多次重复执行
MySQL 项目中 SQL 脚本更新、升级方式,防止多次重复执行
64 0
|
3月前
|
SQL 运维 Oracle
SQL Server 项目中 SQL 脚本更新、升级方式,防止多次重复执行
SQL Server 项目中 SQL 脚本更新、升级方式,防止多次重复执行
46 0
|
5月前
|
SQL 存储 测试技术
|
4月前
|
SQL 存储 数据库
MySQL设计规约问题之如何处理日志类型的表
MySQL设计规约问题之如何处理日志类型的表
|
5月前
|
SQL 存储 数据库
SQL 撤销索引、撤销表以及撤销数据库
SQL 撤销索引、撤销表以及撤销数据库
65 4