Module 02 · The Data Engineering Ecosystem数据工程生态系统
Overview of Data Repositories数据存储库概览:数据库、数据仓库和大数据存储
数据存储库 (Data Repository) 是一个通用术语,指已收集、组织和隔离的数据,以便用于业务运营或用于报告和数据分析的挖掘。
💡 定义:它可以是一个小型或大型的数据库基础设施,包含一个或多个用于收集、管理和存储数据集的数据库。
本视频将概述您的数据可能驻留的不同类型存储库,例如:
- 数据库 (Databases)
- 数据仓库 (Data Warehouses)
- 大数据存储 (Big Data Stores)
数据库 (Databases)
数据库是数据的集合,专为数据的输入、存储、搜索、检索和修改而设计。
数据库管理系统 (DBMS)
- 数据库管理系统 (DBMS) 是一套创建和维护数据库的程序。
- 它允许您使用一种称为查询 (Querying) 的功能,从数据库中存储、修改和提取信息。
- 例如:如果您想查找六个月或更长时间不活跃的客户,通过查询功能,DBMS 将从数据库中检索所有符合条件的客户数据。
- 尽管数据库和 DBMS 含义不同,但这些术语经常互换使用。
数据库的类型
数据库的选择受到多种因素的影响,例如数据类型和结构、查询机制、延迟要求、事务速度和数据的预期用途。在此,需要重点提及两种主要的数据库类型:关系型数据库和非关系型数据库。
1. 关系型数据库 (Relational Databases)
- 也称为 RDBMS (Relational Database Management Systems)。
- 组织原则:建立在平面文件 (Flat Files) 的组织原则之上,数据被组织成具有行和列的表格格式,遵循明确定义的结构和模式 (Schema)。
- 优化:与平面文件不同,RDBMS 经过优化,可用于涉及许多表格和更大体量数据的数据操作和查询。
- 标准查询语言:结构化查询语言 (SQL - Structured Query Language) 是关系型数据库的标准查询语言。
2. 非关系型数据库 (Non-relational Databases)
- 也称为 NoSQL(“Not Only SQL”,不仅仅是 SQL)。
- 出现背景:非关系型数据库的出现是为了应对当前数据生成的体量、多样性和速度,主要受到云计算、物联网和社交媒体普及等进步的影响。
- 设计理念:专为速度、灵活性和规模而构建,使得数据可以无模式 (Schema-less) 或自由格式的方式存储。
- 应用:NoSQL 广泛用于处理大数据。
数据仓库 (Data Warehouses)
数据仓库作为一个中央存储库,通过 ETL 过程(抽取、转换、加载)将来自不同来源的信息合并和整合到一个综合数据库中,用于分析和商业智能。
ETL 过程 (Extract, Transform, Load)
- 从高层次来看,ETL 过程帮助您完成以下步骤:
- 抽取 (Extract):从不同的数据源提取数据。
- 转换 (Transform):将数据转换成一个干净且可用的状态。
- 加载 (Load):将数据加载到企业的数据存储库中。
相关概念
与数据仓库相关的概念还有数据集市 (Data Marts) 和数据湖 (Data Lakes)。
- 历史演变:由于大部分传统企业数据驻留在 RDBMS 中,数据集市和数据仓库在历史上一直是关系型的。
- 新趋势:然而,随着 NoSQL 技术和新数据源的出现,非关系型数据存储库现在也开始用于数据仓库领域。
大数据存储 (Big Data Stores)
大数据存储是另一种数据存储库类别,它包含分布式计算和存储基础设施,用于存储、扩展和处理非常大的数据集。
总结与意义
总体而言,数据存储库有助于隔离数据,并使报告和分析更加高效和可信,同时还可作为数据档案。