DW - 数据仓库原理
2023年5月31日 01:13:14,刷B站的时候,刷到了李鹏程大佬的B站作品。
MPP架构 vs 分布式架构
数据仓库的诞生原因
1、历史数据积存;2、企业数据分析需要。
- 历史数据积存:历史数据使用频率低,堆积在业务库中,导致性能下降
- 企业数据分析需要:各个部门自己建立独立的数据抽取系统,导致数据不一致。
数据仓库的基本概述
由数据仓库之父比尔·恩门(Bill Inmon)提出
数据仓库是一个面向主题的、集成的、非易失的且随时间变化的数据集合
主要用于组织积累的历史数据,并使用分析方法(OLAP、数据分析)进行分析整理,进而辅助决策,为管理者、企业系统提供数据支持,构建商业智能。
数据仓库的特点
面向主题:为数据分析提供服务,根据主题将原始数据集合在一起
集成:原始数据来源于不同数据源,要整合成最终数据,需要经过抽取、清洗、转换的过程
非易失:保存的数据是一系列历史快照,不允许被修改,只允许通过工具进行查询、分析
时变性:数仓会定期接收、集成新的数据,从而反映出数据的最新变化
数据仓库 vs 数据库
数据库是面向事务设计的,属于OLTP(在线事务处理)系统,主要操作是随机读写;在设计时尽量避免冗余,常采用符合范式规范来设计
数据仓库是面向主题设计的,属于OLAP(在线分析处理)系统,主要操作是批量读写;关注数据整合,以及分析、处理性能;会有意引入冗余,采用反范式方式设计。
数据库 | 数据仓库 | |
面向 | 事务 | 分析 |
数据类型 | 细节、业务 | 综合、清洗过的数据 |
数据特点 | 当前的、最新的 | 历史的、跨时间维护 |
目的 | 日常操作 | 长期信息需求、决策支持 |
设计模型 | 基于ER模型,面向应用 | 星形/雪花模型,面向主题 |
操作 | 读/写 | 大多为读 |
数据规模 | GB到TB | >=TB |
MPP架构 vs 分布式架构
- MPP架构
传统数仓中常见的技术架构,将单机数据库节点组成集群,提升整体处理性能
节点间为非共享架构(Share Nothing),每个节点都有独立的磁盘存储系统和内存系统
每台数据节点通过专用网络或者商业通用网络互相连接,彼此协同计算,作为整体提供服务
设计上优先考虑C(一致性),其次考虑A(可用性),尽量做好P(分区容错性)
- 架构优点
运算方式精细,延迟低、吞吐低
适合中等规模的结构化数据处理
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南