ETL的基本概念
数据抽取(Extraction):从不同源头系统中获取所需数据的步骤。比如从mysql中拿取数据就是一种简单的抽取动作,从API接口拿取数据也是。
数据转换(Transformation):清洗、整合和转化原始数据以适应目标存储或分析系统的阶段。从mysql中拿到数据之后对数据进行处理,像对数据的一些修改,删除,新增都算是,学过编程的同学应该很容易理解。
数据加载(Loading):将经过处理的数据载入到数据仓库或其他目标平台的过程。这个就更简单了,就是将数据加载到目标系统里去,这个系统可以是一个接口,可以是一个数据库,可以是一个平台。
ETL在数据挖掘中的作用
- 预处理与清洗:去除无关数据,填充缺失值,统一数据格式等。
- 结构化处理:通过ETL将非结构化或半结构化数据转化为便于挖掘的结构化数据。
其中非结构化或半结构化数据是指那些不符合传统关系数据库严格定义格式的数据类型。非结构化数据通常没有预定义的数据模型,如文本文件、电子邮件、社交媒体帖子、图片、音频和视频等,这些数据的内部结构各异,难以直接通过数据库表格进行管理和分析。而半结构化数据则具有某种层次性或自我描述性的结构,但不遵循固定模式,例如XML、JSON文件,它们包含标签或者键值对形式的数据,比非结构化数据更易于处理,但仍需要特殊的方法和技术来提取和解析其中的有效信息。
- 数据集成:跨多个源系统集成相关数据,为后续的数据挖掘提供全面信息。