电商项目之用户启动 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"

相关文章
|
2月前
|
SQL 关系型数据库 MySQL
项目中遇到一张900w的数据表把原先要花费17s执行的SQL优化到300ms经验加100哈哈哈
项目中遇到一张900w的数据表把原先要花费17s执行的SQL优化到300ms经验加100哈哈哈
41 1
|
2月前
|
SQL Java 应用服务中间件
Java项目防止SQL注入的四种方案
Java项目防止SQL注入的四种方案
81 0
|
2月前
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(1)——表中数据的整删改查
简简单单 My SQL 学习笔记(1)——表中数据的整删改查
|
2月前
|
SQL HIVE UED
【Hive SQL 每日一题】分析电商平台的用户行为和订单数据
作为一名数据分析师,你需要分析电商平台的用户行为和订单数据。你有三张表:`users`(用户信息),`orders`(订单信息)和`order_items`(订单商品信息)。任务包括计算用户总订单金额和数量,按月统计订单,找出最常购买的商品,找到平均每月最高订单金额和数量的用户,以及分析高消费用户群体的年龄和性别分布。通过SQL查询,你可以实现这些分析,例如使用`GROUP BY`、`JOIN`和窗口函数来排序和排名。
|
2月前
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(2)——分组和简单数据的查询
简简单单 My SQL 学习笔记(2)——分组和简单数据的查询
|
2月前
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(3)——连接和嵌套查询
简简单单 My SQL 学习笔记(3)——连接和嵌套查询
|
2月前
|
SQL 自然语言处理 数据挖掘
NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道
NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道
NL2SQL技术方案系列(1):NL2API、NL2SQL技术路径选择;LLM选型与Prompt工程技巧,揭秘项目落地优化之道
|
2月前
|
SQL 机器学习/深度学习 算法
SQL SERVER ANALYSIS SERVICES决策树、聚类、关联规则挖掘分析电商购物网站的用户行为数据
SQL SERVER ANALYSIS SERVICES决策树、聚类、关联规则挖掘分析电商购物网站的用户行为数据
|
SQL 数据库 数据库管理
Sql Server中孤立的SQL用户查找和删除
问题 最近公司很多数据库在上云,也有一部分在下云。这期间出现了很多问题,其中一个比较恶心的问题就是“孤立用户”。当数据库备份还原以后用以前的用户发现不能登录。一开始以为是登录账号没有创建,然后重新创建登录账号,然后再授权给数据库,此时又出错,说用户已经存在。
1364 0
|
3天前
|
SQL 存储 监控
SQL Server的并行实施如何优化?
【7月更文挑战第23天】SQL Server的并行实施如何优化?
25 13