目录
注:此博文为根据 赵宏田 老师的 用户画像·方法论与工程化解决方案 一书读后笔记而来,仅供学习使用
0. 相关文章链接
1. 数据架构
在整个工程化方案中,系统依赖的基础设施包括Spark、Hive、 HBase、Airflow、MySQL、Redis、Elasticsearch。除去基础设施外, 系统主体还包括Spark Streaming、ETL、产品端3个重要组成部分。如下图所示:
在上图下方虚线框中为常见的数据仓库ETL加工流程,也就是将每 日的业务数据、日志数据、埋点数据等经过ETL过程,加工到数据仓库 对应的ODS层、DW层、DM层中。
中间的虚线框即为用户画像建模的主要环节,用户画像不是产生 数据的源头,而是对基于数据仓库ODS层、DW层、DM层中与用户相关数 据的二次建模加工。在ETL过程中将用户标签计算结果写入Hive,由于不同数据库有不同的应用场景,后续需要进一步将数据同步到MySQL、 HBase、Elasticsearch等数据库中。
- Hive:存储用户标签计算结果、用户人群计算结果、用户特征库计算结果。
- MySQL:存储标签元数据,监控相关数据,导出到业务系统的数据。
- HBase:存储线上接口实时调用类数据。
- Elasticserch:支持海量数据的实时查询分析,用于存储用户人群计算、用户群透视分析所需的用户标签数据(由于用户人群计算、用户群透视分析的条件转化成的SQL语句多条件嵌套较为复杂,使用Impala执行也需花费大量时间)。
用户标签数据在Hive中加工完成后,部分标签通过Sqoop同步到MySQL数据库,提供用于BI报表展示的数据、多维透视分析数据、圈人服务数据;另一部分标签同步到HBase数据库用于产品的线上个性化推荐。
注:再次声明,此博文为根据 赵宏田 老师的 用户画像·方法论与工程化解决方案 一书读后笔记而来,仅供学习使用
注:其他相关文章链接由此进 -> 用户画像文章汇总