最新数仓建设实践——58用户画像数仓建设

1.1 数据仓库简介

1.2 数据仓库的价值

1.3 用户画像简介

1.4 用户画像—标签体系

二、用户画像数仓建设过程

2.1 画像数仓—背景&现状

2.2 画像数仓—整体架构

2.3 画像数仓—研发流程

2.4 画像数仓—指标定义

2.5 画像数仓—建模方法论

2.6 画像数仓—事实表

2.6 画像数仓—维度表

2.7 画像数仓—建模规范

2.8 画像数仓—表命名规范

2.9 画像数仓—分层规范

2.10 画像数仓—标签生产流程

2.11 画像数仓—技术实现

2.12 画像数仓—数据质量保障体系

三、成果和总结


原文大佬介绍的这篇用户画像数仓建设实践有借鉴意义的,这些摘抄下来用作沉淀学习。如有侵权,请告知~

一、数据仓库&用户画像简介

1.1 数据仓库简介

简而言之,数据仓库是一个集成的、面向主题的、相对稳定的数据集合,它能够反映数据的历史变化。在构建数据仓库时,会根据不同的主题域对数据进行分类,并通过数据建模技术对数据进行重新组织和抽象,以便于从更层次对分析对象进行一致且完整的描述,清晰的刻画出各种分析场景,涵盖企业各个方面的数据。

以流量主题域为例,可以清楚地知道这个主题域包含了企业所有系统的用户行为数据。数据仓库的集成性特性体现在它能够整合来自不同业务系统的数据。通过大数据采集框架抽取工具,数据被统一存储在数据仓库中,并利用数据建模技术将一些同字同义、同数同表的数据组织成一致性事实与维度。

数据仓库的相对稳定性意味着数据一旦入库,通常会被长期保留。与关系型数据库相比,数据仓库中的新增、修改和删除操作较少,因为大部分操作都是查询。这种稳定性使得数据仓库能够记录历史数据和事件环境的变化,从而帮助企业对未来发展趋势做出合理的预测和判断。

1.2 数据仓库的价值

数据仓库的价值主要体现在以下几个方面:

  • 快速存取数据:数据仓库统一了数据出口,使得业务人员无需访问各个业务系统来获取数据,从而大幅提升了数据获取和使用的效率。
  • 高质量数据输出:数据仓库通过数据建模和数据质量保障措施,能够过滤掉业务系统中异常的数据,确保输出数据的质量。
  • 响应业务变化:数据仓库的模型能够快速迭代,以满足不同业务场景的分析需求,适应业务的变化。
  • 保障数据安全:对于企业敏感或隐私数据,数据仓库通过去脱敏或加密等手段确保数据安全,并控制数据的使用范围,实现对企业核心数据的细致管理。
  • 及时数据服务:数据仓库能够根据不同需求提供不同粒度的数据服务,例如天级,小时级甚至实时级数据,并在OLAP引擎的支持下实现数据的即席查询。
  • 提高决策能力:企业可以通过数据仓库输出的核心指标来预测未来的发展趋势,做出合理的决策。

1.3 用户画像简介

用户画像是对用户信息进行标签化处理的过程,它通过收集用户的社会属性,行为特征等信息来对用户进行描述,并对这些特征进行统计分析,以挖掘用户的潜在价值。为了快速收集用户行为数据并挖掘其价值,需要建立一个完善的大数据应用体系。

用户画像的作用在于,它可以帮助大数据走出数据仓库,通过精准化运营工具为用户提供个性化推荐,精准营销等多样化的数据服务。这样的服务不仅能够提升用户的体验,还能增强数据的价值,使大数据真正成为推动业务发展的有力工具。

1.4 用户画像—标签体系

用户画像从生产者的角度来看,本质上对用户进行打标签的过程。根据打标签的方法,可以将标签分为两类:统计类标签和算法类标签。

  • 统计类标签是最基础和最常见的标签类型,例如用户的访问城市区域商圈、访问天数等。这些标签是基于用户行为和预定义的计算口径生成的。
  • 算法类标签是通过机器学习或者深度学习挖掘产生,用于对用户的某些属性或者某些行为进行预测判断。例如:根据用户行为特征预测用户的性别、年龄等。

58 同城的画像平台,按品牌划分,涵盖了 58 同城、安居客等品牌下的各类标签。根据每个品牌下不同的业务板块进一步细化标签体系,其中的统计类标签就是通过用户画像数仓来生成的。

二、用户画像数仓建设过程

2.1 画像数仓—背景&现状

首先,介绍一下数仓建设的背景。起初,接收的标签是由历史部门交接过来的,总共有大约 3000 个标签。这些标签涉及的计算口径和数据源等信息,流失的非常严重吗。此外,标签生成流程主要是基于 MapReduce(MR)实现的**,**整个计算过程相当复杂,存在许多冗余的 ETL 任务,且对新的需求支持速度和问题处理效率都较低。再者,标签数据的产出时间非常晚,通常要到下午 2 点左右才能完成当天的 t+1 标签。

为了解决这些问题,进行了标签生产流程的重构,实施步骤主要包括以下两个阶段:

  • 标签计算口径和数据源梳理:从梳理标签的计算口径开始,收集涉及的数据源信息,沉淀出一套完善的标签知识库。在这个过程中,我们还总结出了一套面向数据开发的指标定义规范。
  • 基于标准化数仓建设规范升级流程:根据标准化的数仓建设规范,升级整个标签生产流程,并沉淀了一套相对通用的数仓研发规范。

2.2 画像数仓—整体架构

画像数仓的整体架构如上图所示,自下而上分为三个层级:

  • 垂直数据中心:这是按照不同业务板块划分的数据中心,集中了各个业务领域的资产,并提供了相对标准化的数据,例如用户行为数据,用户注册数据等。目前,画像数仓涵盖了大多数业务的用户数据,日处理数据量约为 20 TB。
  • 公共数据中心:这个中心是按照不同的主题进行划分的,构建了面向不同分析需求的主题数仓。它包含了一些公共汇总数据和明细数据。例如,面向用户行为分析的场景,建设流量数仓提供给业务使用。
  • 应用数据中心:位于公共数据中心之上,它面向不同的需求产出个性化的指标。在用户画像分析场景中,会根据不同的标签需求和应用主题域产出相应的标签数据。

在整个数仓建设的生命周期中,实施了一系列数据规范,包括建模规范,研发规范,指标定义规范等,以确保数仓架构的稳定性和健康性。

2.3 画像数仓—研发流程

画像数仓的研发流程,从需求沟通到数据验收,分为六个阶段:

  • 需求沟通:这是流程的起始阶段,主要进行需求讨论和分析。
  • 设计:这是流程中最重要的阶段,包括数据源信息的质量探查和分析,数据主题域划分, 指标定义以及模型和ETL设计。在这个阶段,数据开发团队需要输出设计文档,以便进行后续的技术评审。
  • 技术评审:通过评审后,进入开发阶段。
  • 开发:这一阶段主要是面向SQL编程的工作;
  • 测试:开发完成后,进行测试以确保数据的准确性和完整性。
  • 上线与验收:最后阶段,数据开发团队主要以辅助角色支持上线和验收工作;

2.4 画像数仓—指标定义

接下来,介绍用户画像数仓的指标定义规范。用户画像数仓是为了生产统计类标签而建设的数仓。指标定义的目的是为了快速辅助模型的设计,同时间避免指标二义性以及重复建设的问题,通过明确定义指标,可以确保在数据仓库中对数据的处理和分析更加准确和高效。

根据指标的性质可以将其分为三类:原子指标、派生指标和衍生指标。

  • 原子指标:是基于某个业务事件的不可拆分的度量,如支付金额,商品库存等,他们具有明确的业务含义。
  • 派生指标:原子指标+时间周期+多个修饰词。例如,“近一天用户访问二手车类目的次数”中,访问次数是原子指标,近一天是时间周期,二手车是类目相关的修饰词。
  • 衍生指标:是基于派生指标复合而成的指标,例如:比例型指标、均值型指标等。

在处理数仓接收到的需求时,我们发现大部分是派生指标和衍生指标,原子指标本身并没有具体的业务分析价值,它们是与业务过程相关的一些度量。

在定义派生指标时,需要清晰的定义出派生指标所涉及的业务板块,所用数据的主题域,来源的业务过程,以及由哪些原子指标和修饰词组成。这样的定义有助于更准确的理解和处理数据仓库中的指标需求。

在建设画像数仓的过程中,还会遇到一类特殊的指标,例如“最近访问的终端类型”和“长访问房产类目”等标签。这些标签的特殊之处在于它们的计算结果是非数值类型的。这类指标通常根据它们的计算结果来定义,如果计算结果是单值文本类型,就将其定义为排名性指标;如果是多值文本类型,则定义为对象集合类型指标。

对于这两种特殊指标,我们在定义时会引入一些特殊的原子指标,并增加一些额外的修饰词,以便清晰地描述指标的计算口径。例如,“常访问房产类目”这个标签,其计算口径是“近 90 天内浏览时长 top5 的房产类目”。在这种情况下,我们会将类目集合定义为原子指标,并增加“统计方法”、“排名名次”、“排名范围”和“排名方式”等修饰词,以清晰地描述这个指标的计算口径。

2.5 画像数仓—建模方法论

常见的建模方法有以下四种:

  • ER模型(实体-关系模型):这种模型要求满足三范式原则,即每一列,每一行以及整张表的数据都具有原子性。ER模型的优点在于它极大的消除了数据冗余,并且能够快速满足实体更新和实体间关系的更新。然而,在面向数据分析场景时,它的缺点是关联查询较多,且难以适应业务的频繁变化。
  • Data Vault 模型:这是在 ER 模型的基础上进一步规范化的模型,是一种中心辐射式模型,是3NF建模的衍生,其建模思想是围绕着业务键的集成模式。Data Vault 模型进一步消除了数据冗余,但在数据分析场景下,它也存在关联查询多和对数据建模要求高的问题。
  • Anchor模型:这是一种 KV(键值)结构化的模型,相对于Data Vault 模型,它进一步整合了数据。Anchor 模型的设计思想是所有实体只添加扩展,不进行修改,这使得它最易于实体扩展和业务变更。不过,相对于前两种模型,在进行数据分析时,它的成本更高,关联查询也更多。
  • 维度建模:这是一种反规范化设计方法,从数据需求出发,同时服务于数据分析需求。它能够满足大规模复杂查询的性能需求,产出指标时关联查询较少,建模成本也较低。然而,与泛式建模相比,它对数据更新不太友好。

在选择建模方法时,用户画像作为一种分析数据场景,为了低成本、高效率地完成用户标签生产,选择维度建模作为方法论是最合适的。维度建模适用于那些需要快速、频繁地读取数据的分析场景,正好符合用户画像数仓的需求。

2.6 画像数仓—事实表

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

74)]

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 10
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: 基于Hadoop的电商用户行为大数据分析数仓建设,是指利用Hadoop技术构建一个存储和分析电商用户行为数据的数据仓库。 首先,Hadoop是一个分布式计算框架,它可以处理大量的数据并提供并行化的计算能力,适用于存储和分析大规模的数据集。因此,选择基于Hadoop来搭建电商用户行为大数据分析数仓是非常恰当的。 在这个数仓,我们可以收集和存储来自电商网站的各种用户行为数据,例如浏览商品、购买商品、评论商品等。这些数据可以通过Hadoop的分布式文件系统(HDFS)进行存储,并通过Hadoop的分布式计算能力进行处理和分析。 为了建设这个数仓,首先需要在Hadoop上部署适用于大数据存储和计算的软件,例如Hadoop的分布式文件系统HDFS和分布式计算框架MapReduce。然后,需要建立相应的数据采集系统,将来自电商网站的用户行为数据存储到HDFS。 接下来,可以使用Hadoop生态系统的其他组件进行数据清洗、数据挖掘和数据分析。例如,可以使用Hadoop的批处理框架MapReduce进行数据清洗和转换,使用Hadoop的分布式数据库HBase进行数据存储和查询,使用Hadoop的数据仓库工具Hive进行数据分析和查询。 通过对这个数仓大数据进行分析,可以发现用户的行为模式和偏好,并进一步进行个性化推荐、精准营销和用户画像等工作。同时,可以通过对用户行为数据的分析,优化电商网站的运营和服务策略,提升用户体验和增加销售额。 总之,基于Hadoop的电商用户行为大数据分析数仓建设,可以帮助电商企业更好地理解用户需求和行为,提供更加个性化和精准的服务,促进业务增长和竞争优势的提升。 ### 回答2: 基于Hadoop的电商用户行为大数据分析数仓建设主要包括以下几个方面的内容。 首先,我们需要建立一个完整的数据收集和存储系统。通过使用Hadoop分布式存储和处理框架,可以快速地处理大量的数据。我们可以将用户行为数据从各个不同的数据源收集到一个数据湖,然后使用Hadoop将其分散存储在多个节点上,以确保数据的高可靠性和高可用性。 其次,我们需要建立一个数据清洗和转换的流程。由于电商用户行为数据具有很高的复杂性和维度,为了更好地进行分析,我们需要对数据进行清洗和转换。通过使用Hadoop的数据处理和ETL工具,我们可以对数据进行清洗、去重、格式转换等操作,使其更符合分析的需求。 然后,我们需要进行数据建模和指标定义。通过对用户行为数据进行建模,我们可以将用户行为关联起来,形成用户画像和用户行为路径等指标,从而更好地了解用户的购买行为和偏好。同时,我们还可以定义一些关键指标,如转化率、留存率和复购率等,来衡量电商平台的运营效果。 最后,我们可以使用Hadoop的分析工具进行数据分析和挖掘。通过使用Hadoop分布式计算框架,我们可以对大规模的用户行为数据进行深入的分析和挖掘。我们可以使用机器学习和数据挖掘算法来进行用户行为预测和推荐,以提高电商平台的用户体验和销售额。 总之,基于Hadoop的电商用户行为大数据分析数仓建设可以帮助电商平台更好地了解和分析用户行为,为电商平台的运营决策提供数据支持,并通过数据分析和挖掘来提升用户体验和销售额。 ### 回答3: 基于Hadoop的电商用户行为大数据分析数仓建设是指利用Hadoop技术构建一个存储和处理大规模用户行为数据的系统。此系统主要用于电子商务业务部门对用户行为数据进行分析,以从挖掘商业价值。 第一步是数据收集。电商平台需要收集多种类型的用户行为数据,包括用户浏览商品、下单、支付、评价等各个环节的数据。这些数据通常以结构化或半结构化的形式存储在关系数据库。 第二步是数据存储和预处理。电子商务平台将原始数据导入到Hadoop分布式文件系统(HDFS),并使用Hive等查询引擎对数据进行预处理和清洗。预处理包括数据清洗、格式转换、字段抽取等操作,以确保数据的准确性和一致性。 第三步是数据分析和挖掘。使用Hadoop的MapReduce编程模型Spark分布式计算框架,对预处理后的数据进行复杂的数据分析和挖掘,包括用户行为模式分析、用户画像构建、个性化推荐、销售预测等。通过这些分析和挖掘,电子商务平台可以更好地了解用户需求、改进产品和服务,提高销售和用户满意度。 第四步是数据可视化和报告。利用数据可视化工具如Tableau、Power BI等,将分析结果以直观的图表形式展示给电商业务部门,并生成报告。这些报告可以帮助业务部门更好地了解用户行为趋势和特点,以及洞察潜在的商业机会。 基于Hadoop的电商用户行为大数据分析数仓建设可以帮助电子商务平台更好地理解和洞察用户行为,提供更精准的个性化推荐和服务,促进销售增长,提升用户满意度,为企业创造更大的商业价值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值