CDA持证人阿涛哥

2021-12-27   阅读量: 634

数据分析师 用户画像

用户画像用的Hive数据仓库是什么样的?

扫码加入数据分析学习群


建立用户画像首先需要建立数据仓库,用于存储用户标签数据。 Hive是基于Hadoop的数据仓库工具,依赖于HDFS存储数据,提供的 SQL语言可以查询存储在HDFS中的数据。开发时一般使用Hive作为数据仓库,存储标签和用户特征库等相关数据。

数 据 仓 库 之 父 ”W.H.Inmon 在 《 Building the Data Warehouse》一书中定义数据仓库是一个面向主题的、集成的、非易失的、随时间变化的、用来支持管理人员决策的数据集合


·面向主题:业务数据库中的数据主要针对事务处理,各个业务系 统之间是相互分离的,而数据仓库中的数据是按照一定主题进行组织的。


·集成:数据仓库中存储的数据是从业务数据库中提取出来的,但并不是对原有数据的简单复制,而是经过了抽取、清理、转换(ETL等工作。业务数据库记录的是每一项业务处理的流水账。这些数据不适合进行分析处理,进入数据仓库之前需要经过一系列计算,同时抛弃一些无关分析处理的数据。


·非易失:业务数据库中一般只存储短期数据,因此其数据是不稳定的,记录的是系统中数据变化的瞬态。数据仓库中的数据大多表示过去某一时刻的数据,主要用于查询、分析,不像业务系统中的数据库一样经常修改,一般数据仓库构建完成后主要用于访问,不进行修改和删除。


·随时间变化:数据仓库关注的是历史数据,按时间顺序定期从业务数据库和日志库里面载入新的数据进行追加,带有时间属性。 数据抽取到数据仓库的流程如图3-1所示。


image.png

3-1 数据抽取到数据仓库


在数据仓库建模的过程中,主要涉及事实表和维度表的建模开发 (图3-2)。


事实表主要围绕业务过程设计,就应用场景来看主要包括事务事实表,周期快照事实表和累计快照事实表:


·事务事实表:用于描述业务过程,按业务过程的单一性或多业务过程可进一步分为单事务事实表和多事务事实表。其中单事务事实表分别记录每个业务过程,如下单业务记入下单事实表,支付业务记入支付事实表。多事务事实表在同一个表中包含了不同业务过程,如下单、支付、签收等业务过程记录在一张表中,通过新增字段来判断属于哪一个业务过程。当不同业务过程有着相似性时可考虑将多业务过程放到多事务事实表中。


·周期快照事实表:在一个确定的时间间隔内对业务状态进行度量。例如查看一个用户的近1年付款金额、近1年购物次数、近30日登录天数等。


·累计快照事实表:用于查看不同事件之间的时间间隔,例如分析用户从购买到支付的时长、从下单到订单完结的时长等。一般适用于有明确时间周期的业务过程。

image.png

3-2 数据仓库建模


维度表主要用于对事实属性的各个方面描述,例如,商品维度包括商品的价格、折扣、品牌、原厂家、型号等方面信息。维度表开发的过程中,经常会遇到维度缓慢变化的情况,对于缓慢变化维一般会采用:重写维度值,对历史数据进行覆盖;保留多条记录,通过插入维度列字段加以区分;开发日期分区表,每日分区数据记录当日维度的属性;开发拉链表按时间变化进行全量存储等方式进行处 理。在画像系统中主要使用Hive作为数据仓库,开发相应的维度表和 事实表来存储标签、人群、应用到服务层的相关数据。

24.4745 4 0 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子