大数据和机器学习 > 大数据计算 MaxCompute > 正文

基于MaxCompute构建企业用户画像(用户标签的制作)

简介: 在数据化营销时代,数据的价值越发显得更为珍贵。那如何让自己的数据发挥价值,也就是说如何让公司沉睡的数据能够驱动业务发展给公司带来商业价值?在营销里面我们都谈精准营销,谈用户画像,那用户画像到底如何构建,用户的标签如何开发?本示例给与最简单的demo,那个大家清楚认识基于MaxCompute如何构建企业用户标签。
+关注继续查看

背景:

在数据化营销时代,数据的价值越发显得更为珍贵。那如何让自己的数据发挥价值,也就是说如何让公司沉睡的数据能够驱动业务发展给公司带来商业价值?在营销里面我们都谈精准营销,谈用户画像,那用户画像到底如何构建,用户的标签如何开发?本示例给与最简单的demo,那个大家清楚认识基于MaxCompute如何构建企业用户标签。

数据说明:

8f94082e-45f3-4b9e-8144-7d3b5726e0e7.png

基站位置信息:s_user_cell_log

CREATE TABLE s_user_cell_log (
	user_id bigint COMMENT '用户id',
	cell string COMMENT '基站id',
	phone_type string COMMENT '接入设备类型',
	latitude double COMMENT '维度',
	longitude double COMMENT '经度',
	log_time datetime COMMENT '日志时间',
	app_type bigint COMMENT 'app类型'
)
COMMENT '基站位置信息'
PARTITIONED BY (
	ds string
)
LIFECYCLE 90;

设备位置信息:s_user_device_log

CREATE TABLE s_user_device_log (
	user_id bigint COMMENT '用户id',
	imei string COMMENT 'imei',
	latitude double COMMENT '维度',
	longitude double COMMENT '经度',
	log_time datetime COMMENT '日志时间',
	app_type bigint COMMENT 'app类型'
)
COMMENT '设备位置信息'
PARTITIONED BY (
	ds string
)
LIFECYCLE 90;

网页日志信息:s_user_web_log

CREATE TABLE s_user_web_log (
	user_id bigint COMMENT '用户id',
	cookie string COMMENT 'cookieid',
	ip string COMMENT 'ip',
	url string COMMENT 'url',
	log_time datetime COMMENT '日志时间',
	app_name string COMMENT 'app类型'
)
COMMENT '网页日志信息'
PARTITIONED BY (
	ds string
)
LIFECYCLE 90;

计算逻辑:

通过基站信息、手机设备位置信息以及网页日志信息,通过一定的计算逻辑来推演用户地址的基础信息:dwd_log_addr_d
CREATE TABLE dwd_log_addr_d (
	user_id bigint COMMENT '用户id',
	prov_id bigint COMMENT '省份id',
	city_id bigint COMMENT '城市id',
	dist_id bigint COMMENT '区域id',
	bizdate string COMMENT '日期'
)
COMMENT '用户地址基础表'
PARTITIONED BY (
	ds string
)
LIFECYCLE 90;
dwd_log_addr_d表的ODPS SQL处理逻辑如下:
其中ip2region和lbs2region两个函数都需要用户自己来编写UDF来实现。
insert overwrite table dwd_log_addr_d partition (ds='${bdp.system.bizdate}') 
select 
user_id  
,prov_id 
,city_id 
,dist_id 
from (select 
       user_id
       ,ip2region(ip,'province') as prov_id
       ,ip2region(ip,'city')     as city_id
       ,ip2region(ip,'district') as dist_id
      from s_user_web_log   --用户访问网页日志信息
      where ds='${bdp.system.bizdate}'
      union all 
      select 
       user_id
       ,lbs2region(latitude,longitude,'province') as prov_id
       ,lbs2region(latitude,longitude,'city')     as city_id
       ,lbs2region(latitude,longitude,'district') as dist_id
      from s_user_cell_log   --基站信息
      where ds='${bdp.system.bizdate}'
      union all 
      select 
       user_id
       ,lbs2region(latitude,longitude,'province') as prov_id
       ,lbs2region(latitude,longitude,,'city')     as city_id
       ,lbs2region(latitude,longitude,,'district') as dist_id
      from s_user_device_log    --用户手机位置信息
      where ds='${bdp.system.bizdate}'    
     ) a 
group by user_id  
,prov_id 
,city_id 
,dist_id ;
根据ODPS SQL(近90天内出现最多的位置来断定常驻地信息)来计算常驻地信息表dm_tag_addr_city
insert overwrite table dm_tag_addr_city partition (ds='${bdp.system.bizdate}') 
select 
user_id,
city_id as addr_city
from ( select 
       user_id,
       city_id,
       ROW_NUMBER(partition by user_id order by date_cnt desc ) as rn
       from ( select 
              user_id,
              city_id,
              count(distinct dt) as date_cnt
              from dwd_log_addr_d 
              where ds<='${bdp.system.bizdate}' 
              and ds>'${bizdate_90}'
            ) t0 
      ) t1     
where t1.rn=1;

--调度参数说明
bizdate_90=${yyyymmdd-90}
最终我们的开发好的标签要被业务系统所使用,通常情况下我们会同步至业务数据库如RDS,但在大数据时代,随着数据标签的海量增长,往往在标签的查询效率上要求更过,在本实例中,我们将用户标签数据同步至分析型数据库AnalyticDB中。支持毫秒级针对万亿级数据进行即时的多维分析透视和业务探索。
90ecf9a0-ce4a-4fd4-98cf-24bb70dfd764.png

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《帮助企业做好MaxCompute成本优化的实践》电子版地址
帮助企业做好MaxCompute成本优化的实践
22 0
基于MaxCompute、DataWorks和PAI构建企业数据中台经验分享
关于数据中台的构建我在之前的文章中有过多次分享,本篇文章主要聚焦基于阿里云大数据平台构建企业数据中台的经验反馈。
424 0
基于MaxCompute+PAI的用户增长方案实践
如何通过PAI+MaxCompute完成用户增长模型AARRR全链路,包含拉新、促活、留存、创收、分享。
849 0
SaaS模式云数据仓库 MaxCompute 企业级安全能力升级—持续定义云原生,有效提升企业数据安全管理水平
日前,阿里云SaaS模式云数据仓库MaxCompute 全面升级企业级安全新能力,新发布功能包含实时审计日志、细粒度授权、数据脱敏、存储加密( BYOK)、持续备份恢复和跨地域的容灾备份。MaxCompute作为全托管大数据平台内建完善的安全管理能力,本次升级将对企业云上数据和业务形成更加全面和细粒度的保护,有效提升企业安全管理水平。
433 0
友盟+联合EB级云数据仓库 MaxCompute 实现友盟域和企业私域数据全面融合
国内领先的第三方全域数据智能服务商友盟+,联合阿里云EB级云数据仓库 MaxCompute 为企业提供面向分析的,实现友盟域数据与企业私域数据全面融合的自助分析服务“U-DOP数据开放”。
684 0
MaxCompute用户初体验
作为一名初次使用MaxCompute的用户,我体会颇深。MaxCompute 开箱即用,拥有集成化的操作界面,你不必关心集群搭建、配置和运维工作。仅需简单的点击鼠标,几步操作,就可以在MaxCompute中上传数据,分析数据并得到分析结果。
1982 0
只需四步,帮助企业做好MaxCompute成本优化
阿里云在和很多企业交流的过程中发现他们在使用MaxCompute的时候往往会遇到一些成本相关的问题,而在与客户不但交流沟通的过程中,阿里云在成本优化方面也积累了大量的经验,因此也希望能够将这些经验沉淀下来分享给更多的企业和开发者,本文就将与大家分享帮助企业做好MaxCompute成本优化的“四步走”战略。
4026 0
阿里巴巴云计算进驻水泥行业 MaxCompute助力企业“智慧大脑”
7月10日,山东能源淄矿集团和阿里云计算公司签署协议,共同推动新旧动能转换合作项目。其中,淄矿东华水泥智慧大脑项目,是淄矿东华水泥联合阿里云打造的新旧动能转换标杆项目。这也是淄矿集团与阿里云合作签约后的首个落地项目。
4174 0
“帮助企业做好MaxCompute成本优化的实践” 主题分享 6月21日 18:30不见不散
在这个初夏,MaxCompute与大数据开发者们共同开启 “因计算,共成长” 分享季。 第一季《MaxCompute开发实战,爽爽不油腻》,共四次主题分享,每周二 18:30-19:00 “MaxCompute开发者交流钉钉群” 在这里等你。
2542 0
MaxCompute(原ODPS)是一项面向分析的大数据计算服务,它以Serverless架构提供快速、全托管的在线数据仓库服务,消除传统数据平台在资源扩展性和弹性方面的限制,最小化用户运维投入,使您经济并高效的分析处理海量数据。
热门文章
热门讨论
+关注
祎休
阿里云MaxCompute产品经理,帮助每一个想使用大数据计算服务的同学轻松上云。
文章
问答
视频
相关电子书
更多
云端大规模视频分析:MaxCompute在视觉计算中的应用
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载