未名企鹅极客 | 医药流向的数据仓库建模

本文介绍了医药流向数据在数据仓库建模中的思路和心得,重点讲解了数据建模的概念、维度模型(包括事实表、维度表、数据立方体、星型模型和雪花模型)以及如何针对医药流向业务进行建模。通过维度建模,可以优化数据结构,便于理解,提高查询性能,并实现数据口径统一。未名企鹅采用这种方法构建稳定、可靠、灵活的数据仓库,以支持高效的数据分析和决策。
摘要由CSDN通过智能技术生成

关于医药流向数据,在实际处理的过程当中涉及到数据仓库的建模。未名企鹅的研发工程师Lee在此提供一些建模的思路和心得。首先我们来熟悉一些概念和定义解释。

01
什么是数据建模?

数据建模,就是设计数据的结构以及数据之间关系的过程。

业务系统是按照业务流程方便操作的方式来进行数据建模的。业务系统一般都采用关系型数据库进行数据的存储,考虑到数据的一致性以及减少数据的冗余,通常采用实体关系模型进行数据的建模。

而数据仓库则使用与业务数据库完全不同的建模方式来组织数据,这种方式被称为“维度模型”。维度模型是完全面向数据分析的,所以数据仓库是从业务易理解的角度重新组织数据。

数据仓库的建模需要考虑到如下问题:
a)数据的存储结构以及数据之间的关系要便于理解,要让数据的使用方很容易的理解和使用数据;

b)面向分析设计数据表结构,提升查询性能;

c)尽量减少不必要的数据冗余,实现计算结果的复用,降低数据的存储和计算成本;

d)定义一致的指标、维度,各业务按照统一的规范建设,统一数据的口径;

e)对一些特定的数据,能够存储历史,支持查询数据的变更历史记录。

02
维度模型

为了更好的了解数据建模,需要先介绍一些维度模型的基本概念。

A
维度和度量

维度(Dimension)是描述数据的角度,通常是一个属性,如时间、地点、客户、商品等,用于描述谁、什么、哪里、何时、如何、为什么等有关的事件。

度量(Measure)是基于数据所计算出来的数值,如销售额、用户数等。

分析人员往往要结合若干个维度来计算度量值,在一个SQL查询中,group by的属性通常就是维度,而聚合函数所计算的数值则是度量。

B
事实表和维度表

事实表(Fact Table)是指存储业务过程数据的表,如订单、交易记录、库存记录等。事实的记录是在不断的快速增长的,所以它的数据量通常会比较大。事实表的每一行记录都代表了一个事实,每一个事实都有一个或多个度量值。以流向为例,流向中产品的销售数量和销售金额就是这一个条流向的度量。

维度表(Dimension Table),简称维表,它保存的是维度信息,维度表通常用来与事实表进行关联查询,从而提取出目标数据。常见的维度表有时间表、地区表、客户表、产品表等。比如流向中的上游、下游都属于维度。

事实表中通常存储度量值,比如订单的金额,而用来描述事实的各种维度信息,比如时间、地点、上下游、商品等信息通常是存储在维度表中,然后在事实表中存储对应维度的ID,从而能够在查询时进行关联。不同的维度信息又会拆分到不同的维度表中。

使用维度表和事实表分离的设计有如下好处:
a)事实表的数据量通常都很大,而且在不停的快速增长,通过将维度信息抽取到维度表中存储,能够减少事实表的数据大小,避免

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值