龙空技术网

数据仓库

数据爱好者 55

前言:

目前咱们对“销售数据分析作用”可能比较珍视,各位老铁们都想要知道一些“销售数据分析作用”的相关文章。那么小编同时在网摘上网罗了一些对于“销售数据分析作用””的相关文章,希望小伙伴们能喜欢,我们一起来了解一下吧!

一、数据仓库概念的深化理解(一)定义与核心特征

数据仓库是一个面向主题、数据集成、相对稳定(非易失)且反映历史变化的数据集合,用于支持管理决策。在现代企业数据架构中,它是数据的核心存储和分析中心。

面向主题:与传统数据库以业务流程为中心不同,数据仓库围绕特定主题组织数据,如销售、客户、产品等主题。这些主题是对企业业务领域的抽象划分,有助于从宏观层面理解和分析数据。例如,销售主题可能涵盖订单数据、销售渠道数据、客户购买行为数据等,通过整合这些相关数据,可以深入分析销售趋势、客户购买偏好等。数据集成:企业数据通常分散在多个异构系统中,数据仓库需要集成这些来自不同数据源的数据。这涉及到数据抽取、转换和加载(ETL)或更为先进的抽取、加载和转换(ELT)过程。通过集成,确保数据的一致性和完整性,为全面的数据分析提供基础。例如,将来自企业资源计划(ERP)系统、客户关系管理(CRM)系统和供应链管理(SCM)系统中的相关数据集成到数据仓库的销售主题中。非易失性与历史变化:数据仓库主要用于数据分析,数据一旦存储,很少进行更新操作,以保证数据的稳定性和准确性。同时,它能够反映历史变化,随着时间推移,不断添加新数据、删除过期数据,并对历史明细数据进行聚合。例如,存储多年的销售数据,每年都会新增当年的销售记录,同时可能对多年的数据进行聚合分析,如计算年度销售额的增长率。(二)与其他数据存储系统的比较

传统数据库对比

数据组织方式:传统数据库侧重于支持日常业务操作,以事务处理为核心,数据按照业务流程和实体关系进行组织。而数据仓库以分析为导向,围绕主题组织数据,更关注数据的整合和分析价值。数据更新频率:传统数据库频繁更新以反映实时业务状态,而数据仓库更新相对较少,注重历史数据的保存和分析。数据结构设计:传统数据库通常遵循严格的范式设计,以减少数据冗余和保证数据一致性。数据仓库在某些情况下可能采用反范式设计,如维度建模中的星型模型和雪花模型,以提高查询性能。

数据湖对比

数据存储形式:数据湖存储原始的、未经处理的大量数据,数据格式多样,包括结构化、半结构化和非结构化数据。数据仓库则存储经过清洗、转换和集成的结构化数据,更适合用于分析和决策支持。数据治理程度:数据湖对数据的治理相对宽松,注重数据的存储和快速获取。数据仓库则有更严格的数据治理要求,包括数据质量控制、元数据管理等,以确保数据的准确性和可用性。应用场景:数据湖适用于探索性数据分析、数据科学研究和机器学习算法的训练等需要大量原始数据的场景。数据仓库则主要用于企业的常规报表生成、商业智能分析和决策支持。二、数据仓库系统架构(一)总体架构

数据仓库系统架构通常包括用户层、数据集市、数据仓库、ETL(抽取、转换、装载)和源数据等部分。

(二)各部分功能及流程

源数据 源数据是用于分析的原始数据,来源广泛,包括企业内部的 ERP 系统以及外部系统产生的行业数据等。其特点是格式不统一,需要经过 ETL 过程进行集中获取、过滤和转换处理。

ETL 过程 抽取 从各个业务系统和外部系统等源数据处采集数据。 转换:对采集到的数据按照数据仓库的要求进行格式转换,如数据类型转换、缺失值补充、数据综合等。 装载:将转换后的数据按照一定的频率装载到数据仓库中,例如每天装载当天的订单数据,每星期装载客户信息等。

数据仓库 是企业整体分析的数据集合,按照主题结构存储数据,如销售主题、客户主题、产品主题等。它是数据经过 ETL 处理后的最终存储地,为数据分析提供基础。

数据集市 是部门分析的数据集合,属于数据仓库的子集。例如销售部门的数据集市可能只包含销售主题相关的数据。数据集市的概念是为了提高数据仓库建设的效率,尤其是在企业整体建设数据仓库较为困难时,可以先从部门级数据集市开始建设,然后逐步完善整个数据仓库。建设数据仓库的方法有自顶向下和自下向上两种,业界对这两种方法存在一定争议。

用户层 用户通过决策分析、报表和查询等应用系统从数据仓库获取数据并进行分析,最终得到所需的信息和报表。

四、维度分析(一)基本概念

维度 维度是分析问题的角度,可以是事物的特征,如颜色、区域、时间等。维度分为定性维度(如区域维度包括全国各省份)和定量维度(如价格区间、销量区间等)。通过不同的维度可以对指标进行分析对比,例如根据区域维度分析不同区域的产品销量,根据时间维度分析每个月产品的销量等。

指标 指标是衡量事务发展的标准,也叫度量,如价格、销量等。指标可以进行求和、求平均值等计算,分为绝对数值(如价格、销量、分数等)和相对数值(如及格率、购买率、涨幅等)。常见的度量值有 max、min、avg、sum、count。

将课程购买量作为度量的维度可能包括

(二)维度分层与分级

维度可以进行细分,形成层次和级别。例如时间维度可以分为年、季度、月等层次,每个层次又包含不同的级别;地区维度可以分为全国、省、市、县等层次和级别。通过维度分层与分级,可以更深入地分析数据。

(三)下钻与上卷

下钻 是获取低级别的明细信息的过程。例如在课程访问量分析中,如果时间维度有年、月、天、小时等级别,当按天分析课程访问量时,可以进一步按小时下钻,得到一天内每小时的课程访问量。

上卷 是获取高级别的汇总信息的过程。例如在课程访问量分析中,按天分析课程访问量时,可以按月上卷,得到月度的课程访问量。

五、数仓建模(一)建模方法

三范式建模法 主要应用于传统的企业级数据仓库,通常使用关系型数据库实现,适用于自顶向下的数据仓库架构。

维度建模法 基于维度分析来创建模型,适用于自下向上的数据仓库架构。维度建模是一种趋向于支持最终用户对数据仓库进行查询的设计技术,围绕性能和易理解性构建,按照用户看待或分析数据的角度来组织数据。

(二)维度建模核心概念

事实表 是分析的主题对应的表,记录特定事件的数字化信息,一般由数值型数字和指向维度表的外键组成。事实表的设计依赖于业务系统,其数据是业务系统的指标数据。根据不同的应用场景,事实表分为事务事实表、周期快照事实表和累积快照事实表等。

事务事实表 记录事务层面的事实,保存最原子的数据,数据粒度通常是每个事务一条记录,更新方式为增量更新。

周期快照事实表 以固定的时间间隔记录事实,粒度比事务事实表粗,是在事务事实表之上建立的聚集表,更新方式为增量更新。

累积快照事实表 记录事务或产品的整个生命周期的信息,通常具有多个日期字段,数据会一直更新直到过程结束,与周期快照事实表不同的是它记录的是不确定周期的数据。

维度表 维度表是观察数据的角度对应的表,它记录了数据的角度信息。维度表的记录数比事实表少,但每条记录可能包含很多字段。例如,在销售主题的维度表中,可能包括时间维度表(记录年、季度、月、日等时间信息)、地理维度表(记录国家、省、市、县等地理信息)、产品维度表(记录产品名称、产品类别、产品型号等产品信息)和人员维度表(记录销售人员、客户等人员信息)。维度表分为高基数维度数据(如用户资料表、商品资料表等,数据量可能是千万级或上亿级别)和低基数维度数据(如配置表、日期维表、地理维表等,数据量可能是个位数或几千条几万条)

(三)常见建模方法

星型模型 星型模型是一种简单的维度建模方法,它由一个事实表和多个维度表组成,维度表与维度表之间没有关联。星型模型在数据仓库发展初期较为常见,适用于简单的数据分析需求。例如,在一个简单的销售分析中,事实表为订单表,维度表包括客户维度表、产品维度表、时间维度表等。

雪花模型 雪花模型也是一种维度建模方法,它由一个事实表和多个维度表组成,维度表之间可以有层次化关联。雪花模型在数据仓库发展过程中,为了提高数据更新效率,可能会对维度表进行层次化处理,将一些低基数维度表分离出来形成单独的表。例如,在产品销售分析中,事实表为销售表,维度表包括产品主分类维度表、产品子分类维度表、时间维度表等。雪花模型的优点是提高了数据更新效率,但缺点是增加了查询难度。

星座模型 星座模型是一种更为复杂的维度建模方法,它由多个事实表和多个维度表组成,维度表之间可以有共同的关联。星座模型在数据仓库发展中后期较为适用,适用于复杂的数据分析需求。例如,在企业综合分析中,可能有销售事实表和库存事实表两个事实表,维度表包括产品维度表、时间维度表、客户维度表等。

六、渐变维(SCD)(一)维度分类

维度可以分为无变化维度和变化维度。无变化维度是指那些在数据仓库中基本不发生变化的维度,如身份证号、性别等。变化维度是指那些随着时间推移或业务变化而发生变化的维度,如客户地址、产品价格等。大多数维度数据是缓慢变化的,需要对其进行特殊处理,以维护数据的准确性和完整性。

(二)SCD 分类及处理

SCD有三种分类,我们这里以顾客表为例来进行说明

假设在第一次从业务数据库中加载了一批数据到数据仓库中,当时业务数据库有这样的一条顾客的信息。顾客 BIWORK ,居住在北京,目前是一名 BI 的开发工程师。假设 BIWORK 因为北京空气质量 PM2.5等原因从北京搬到了三亚。那么这条信息在业务数据库中应该被更新了。SCD1 是通过更新维度记录直接覆盖已存在的值,不维护历史。这种方法适用于修改错误数据或那些对历史数据不重要的维度变化。例如,如果产品价格错误,直接更新价格维度记录即可,不需要维护历史价格数据。SCD2 是在源数据变化时给维度记录建立新 “版本” 记录,维护维度历史,也叫拉链表。这种方法适用于需要分析历史数据的情况。例如,对于客户地址维度,如果客户地址发生变化,就需要建立一个新的版本记录,记录客户地址变化的历史信息。SCD3 实际上SCD1 and 2 可以满足大多数需求了,但是仍然有其它的解决方案,比如说 SCD3。 SCD3希望只维护更少的历史记录。比如说把要维护的历史字段新增一列,然后每次只更新 Current Column 和 Previous Column。这样,只保存了最近两次的历史记录,历史数据都在同一行数据中。但是如果要维护的字段比较多,就比较麻烦,因为要更多的 Current 和 Previous 字段。所以 SCD3 用的还是没有 SCD1 和 SCD2 那么普遍。它只适用于数据的存储空间不足并且用户接受有限历史数据的情况。七、数据仓库分层(一)为什么分层

数据仓库分层具有多方面的好处。首先,它可以使数据结构更加清晰,便于理解和维护。不同层具有不同的功能和职责,例如,数据源层负责提供原始数据,数据集成层负责处理和集成数据,数据存储层负责存储数据,数据分析层负责分析数据,用户访问层负责提供用户访问接口。其次,分层可以提高性能,通过将数据进行分层处理,可以减少数据查询的复杂性,提高查询速度。例如,在数据存储层采用列存储技术,可以提高数据查询性能。最后,分层可以减少重复开发,通过规范数据分层,可以开发一些通用的中间层数据,这些数据可以在不同的应用场景中重复使用,从而减少重复开发的工作量。

(二)分层方法

数据源层(ODS) 数据源层是数据仓库的最底层,它对接各种数据源,获取原始数据。数据源层的特点是数据结构与源数据基本一致,通常只是进行了一些简单的清洗和验证操作。例如,企业的 ERP 系统数据直接接入数据源层,数据的格式和结构基本保持不变。

数据集成层(DW) 数据集成层是对数据源层的数据进行集成和预处理的一层。它通常分为明细层(DWD)、中间层(DWM)和业务层(DWS)。 明细层(DWD)将数据源层多个表数据聚合在一起,形成一张最为详细的明细表。例如,在销售主题中,明细层可能会将来自不同系统的订单数据、客户数据等聚合在一起,形成一张销售明细表。 中间层(DWM)主要对明细层的数据进行多维聚合操作,如保留人、商品、设备和页面区域维度等。例如,在销售主题中,中间层可能会对销售明细表进行聚合操作,保留人、商品、设备和页面区域维度,形成一张中间表。 业务层(DWS)主要来源于中间层或明细层的数据,针对具体的业务或主题进行细化统计,形成一张宽表。例如,在销售主题中,业务层可能会将一个人在网站中的行为数据放到一张表中,形成一张销售宽表,包含登陆次数、访问次数、购买商品数、购买金额等指标。

用户访问层(APP) 用户访问层是数据仓库的最上层,它存储 DW 分析后的结果数据,对接业务应用。例如,在销售主题中,用户访问层可能会存储销售报表、客户分析报告等数据,供企业管理人员、市场人员等使用。

(三)维表层

高基数维度数据 高基数维度数据是指那些数据量可能是千万级或上亿级别的维度数据,如用户资料表、商品资料表等。在不同层中,高基数维度数据有不同的表现形式。例如,在数据源层,可能是原始的用户资料数据;在数据集成层,可能会进行一些预处理,如清洗、验证等;在用户访问层,可能会根据业务应用进行一些特定的处理,如提取关键信息等。

低基数维度数据 低基数维度数据是指那些数据量可能是个位数或几千条几万条的维度数据,如配置表、日期维表、地理维表等。在不同层中,低基数维度数据也有不同的表现形式。例如,在数据源层,可能是原始的日期数据;在数据集成层,可能会进行一些预处理,如清洗、验证等;在用户访问层,可能会根据业务应用进行一些特定的处理,如将日期数据转换为星期几等。

八、数据仓库设计案例(以电商网站用户访问日志为例对数据仓库分层的详细阐述)(一)ODS 层

数据来源与问题 在电商网站的数据仓库架构中,ODS 层作为数据的源头,接收来自不同端的用户访问日志。由于各端开发团队的差异以及其他多种因素,这些访问日志呈现出分散的状态,被分成了多张表上报到 ODS 层。

对数据的影响 这种分散的数据形式给后续的分析和使用带来了不便,需要在后续层中进行整合和处理,以满足业务需求。

(二)DWD 层

数据整合操作 为了提高数据的可用性和易用性,在 DWD 层采取了关键的整合措施。将来自 PC 网页、H5、小程序和原生 APP 的访问日志汇聚到一张表中,创建了用户访问行为天表。

数据质量提升 在整合过程中,统一了字段名,这不仅规范了数据格式,还提升了数据质量,使得这张表成为一张可供后续分析使用的明细表,为更深入的数据分析奠定了基础。

(三)DWM 层

维度选取与聚合操作 在 DWM 层,基于业务需求,从 DWD 层的用户访问行为天表中选取业务关注的核心维度进行聚合操作。例如,重点保留人、商品、设备和页面区域维度等。

中间表创建 通过这样的聚合操作,创建了多个 DWM 中间表。这些中间表对数据进行了初步的提炼和汇总,使得数据更加符合业务分析的方向,为后续在 DWS 层形成更全面的业务视角提供了支持。

(四)DWS 层

宽表形成 在 DWS 层,进一步对数据进行整合和处理,将一个人在整个网站中的行为数据全部放到一张表中,形成了宽表。

业务需求满足 这张宽表涵盖了丰富的信息,能够快速满足大部分通用型业务需求,如分析用户的行为模式、购买偏好等,为企业的决策提供了有力的数据支持。

(五)APP 应用层

数据拼接操作 在 APP 应用层,根据具体的业务需求,从 DWS 层的一张或多张表中取出相关数据。

应用表生成 将取出的数据进行拼接,最终生成一张应用表。例如,可能生成包含用户购买行为分析、网站流量分析等内容的报表,直接为企业的运营和决策提供服务。

标签: #销售数据分析作用 #销售数据分析主要分析什么