1 数据库
数据库包含关系型数据库存和非关系型数据库。我们通常所说的数据库指的是关系型数据库。关系数据库是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据。关系型数据库的主要用于联机事务处理OLTP(On-Line Transaction Processing)主要进行基本的、日常的事务处理,例如银行交易等场景。
主要特点:
- 结构化程度高
- 独立性强
- 冗余度低
2 数据仓库
数据仓库 ,由数据仓库之父比尔·恩门(Bill Inmon)于1990年提出,主要功能仍是将组织透过资讯系统之联机事务处理(OLTP)经年累月所累积的大量资料,透过数据仓库理论所特有的资料储存架构,做有系统的分析整理,以利各种分析方法如联机分析处理(OLAP)、数据挖掘(Data Mining)之进行,并进而支持如决策支持系统(DSS)、主管资讯系统(EIS)之创建,帮助决策者能快速有效的自大量资料中,分析出有价值的资讯,以利决策拟定及快速回应外在环境变动,帮助建构商业智能(BI)。
主要特点:
- 面向主题:按照一定的主题域进行组织。主题是指用户使用数据仓库进行决策时所关心的重点方面,一个主题通常与多个操作型信息系统相关
- 不可更新:数据仓库主要是为决策分析提供数据,所涉及的操作主要是数据的查询
- 非规范化:数据可以是而且经常是冗余的
- 大容量:时间序列数据集合通常都非常大
- 效率高:通过表结构优化、存储优化等手段,提升查询效率
3 数据湖
数据湖是一个集中存储各类结构化和非结构化数据的大型数据仓库,它可以存储来自多个数据源、多种数据类型的原始数据,数据无需经过结构化处理,就可以进行存取、处理、分析和传输。数据湖能帮助企业快速完成异构数据源的联邦分析、挖掘和探索数据价值。数据湖的本质,是由“数据存储架构+数据处理工具”组成的解决方案。
主要特点:
- 容量大
- 格式多
- 速度快
4 三者比较
数据库 | 数据仓库 | 数据湖 | |
场景 | OLTP 主要进行基本的、 日常的事务处理 | OLAP 通过历史的结构化数据进行数据分析 | OLAP 可以探索性分析所有类型的数据,包括机器学习、数据发现、特征分析、预测等 |
数据源 | 单数据源 | 多数据源 | 多数据源 |
标准化 | 高度标准化的表态schema | 非标准化schema | 非标准化schema |
敏捷性 | 数据库的本质是高度结构化的,用于存储特定的数据格式并回答特定的问题,因此,在敏捷性方面不如数据湖。 | 数据仓库的本质是高度结构化的,用于存储特定的数据格式并回答特定的问题,因此,在敏捷性方面不如数据湖。 | 数据湖的标准,数据湖不需要等待很长的开发周期就能满足数据洞察的需求。 |
数据类型 | 结构化数据 | 在转换过程中结构化的数据 | 未经处理或转换的原始数据包括结构化、非结构化或半结构化数据 |
处理方式 | 写之前格式化 | 进入数仓需要经过ETL,转换成固定模式的数据,即写模式。 | 先装载至数据湖,当访问时才会去解析成所需要的格式,即读模式。 |
容量 | 容易小,通常是G级别 | 一般是TB到PB级别 | 通常是PB级别 |
读写 | 写优化 | 读优化 | 读优化 |
成本 | 起步成本高,后期成本高 | 起步成本高,后期成本较低 | 起步成本低,后期成本较高 |
质量 | 数据质量最高 | 经过ETL之后,都是格式化的高质量的数据,可作为事实依据 | 由于缺少模式, 所有数据都允许输入,因此,数据湖包含较低级别的数据质量 |
对象 | 线上业务 | 业务分析师为主 | 数据科学家、数据开发人员为主 |