模型|数仓避坑:搞懂维度模型
编辑导语:数据仓库有助于建立数据集合,进而支撑企业更好地做出决策支持,推动后续业务的进行。那么,构建数据仓库的过程中需要注意什么问题?本篇文章里,作者总结、分享了数仓建模中的维度问题,一起来看一下。
文章插图
前言
这个系列将从小白视角讲述构建数据仓库过程所需的知识和问题,主要受众是数据中台产品、数据开发、数据分析人员。
引入
在大学就听说过数据仓库,但是当时被书的厚度劝退。后来工作中要做数据仓库,这次不得不咬牙重新翻开那些经典大头书。
一开始,我想赶紧落地,快速过了一遍概念性的东西,业务过程、粒度、维度、事实、度量等等。做到中途发现,各种基础抽象概念没搞清,竞品的某些功能我都看不懂。
正所谓欲速则不达,这些底层的知识,是数据类不变的产品的内核,搞懂了这些,才能跑得快、跑得稳、跑得远。
一、什么是模型,什么是建模什么是模型?作为数据行业从业者,如果你从来没有思考过这个问题,你一定要看下去。
先看一个例子:2021年 3 月 6 日,小明到楼下【行家】便利店买吃的,来来回回逛了几圈,虽然很饿,但又想减肥,最终拿了 1 个【柯德吉】人造肉汉堡。
【 模型|数仓避坑:搞懂维度模型】准备付账的时候,收银员跟他说,最近搞活动,加 4 块可以选一瓶原价 8 块的【卡石】酸奶。小明觉得很划算,于是去拿了酸奶,一共付了 12 块。
上面的这段文字,就是模型。
作为计算机专业的学生,第一次看到别人给我解释这个模型的时候,我第一反应是What?这不就是一段文字嘛?都没数据库,都不是表单,这能算模型?
别急,先看看百度百科给出的模型定义。
模型,是指通过主观意识借助实体或者虚拟表现构成客观阐述形态结构的一种表达目的的物件(物件并不等于物体,不局限于实体与虚拟)。
简单来说,模型是映射 “事实” 的东西,构建这个东西的动作就叫做建模。
其实,如果我们学了数据库,且没认真读教科书,很容易狭隘地只从数据库、数据结构的层面去理解模型。
上述的例子,是一种“文字模型”。而且,这个模型还可以补充更多细节,比如,采用什么方式付款、支付了多少钱。
为了表达更加简洁,我们可以省略更多的信息,只记录关键信息:“ 2021年 3 月 6 日,小明买了,一个 柯德吉牌人造肉汉堡,一瓶卡石牌酸奶(共计 ¥12)”。
如果用 Excel,我们可以更加简洁(节省空间你懂的):
二、范式模型,为了更好地记录和更新计算机的出现,也诞生了新的语言,我们也顺理成章地开始用新语言去建模。
这里,我省去长篇的对关系模型、范式模型的介绍,直接跳到应用场景,假设这个便利店用了现成的 ERP、CRM 系统,这些系统设计好了模型,数据会填充成如下的样子。
1. 订单表2. 订单详情表
文章插图
3. 商品详情表
文章插图
数据量不大,分析人员写 SQL 直接对范式模型进行查询,算账分析无所不能,小几十万数据,速度完全 OK。
三、维度模型,为分析而生范式模型很好地解决了快速记录和节约存储空间。
但事物都有两面性,当数据量大的时候,从范式模型中查询取数,就比较慢了。但数据量一大,就顶不住了。
人类社会,但凡出现问题,总会天降猛士。Innon 和 Kimball 等人提出来新方案:为数据分析设计一套新模型。
- 从几个月到几分钟,NLP模型运行效率暴涨,小公司也能玩大模型
- 腾讯文档|从事展览3d模型设计,你需要具备那些能力?---模大狮网
- 英伟达|NVIDIA Triton 推理引擎公开课上新:基于多实例 GPU 和 K8s 的大规模 CV 模型部署实践
- 肠道菌群|肠道菌群又有新“用途”:建立非酒精性脂肪肝发病预警模型
- aiXcoder XL智能编程大模型发布:自然语言一键生成方法级代码
- AI自己写代码让智能体进化!OpenAI的大模型有“人类思想”那味了
- 机械硬盘|小心数据丢失!618矿盘出货:避坑指南来了
- 字节跳动 AI Lab 提出多模态模型:X-VLM,学习视觉和语言多粒度对齐
- 电子商务|虚拟化身动作不协调?Meta开源肌肉骨骼动力学模型MyoSuite
- 小米科技|小米汽车露真容:雷军迫不及待,先晒模型图,是一台SUV
