数据预处理学习1–ETL和数据清洗
第一个问题,什么是数据预处理?
数据预处理,英文全称是:data preprocessing,顾名思义就是指在进行对主要的数据进行处理以前对数据进行的一些处理
数据预处理分为:
缺失值处理、异常值处理、特征缩放、数值离散化和不平衡数据处理
数据预处理的重要性:
在数据挖掘过程中,数据预处理是不可或缺的部分。
大数据应用中数据的典型特点是独立的、不完整、含噪声和不一致。
大部分数据挖掘算法对数据质量以及数据规模有特殊要求,通过数据预处理能有效的提高数据的质量,为数据挖掘过程节约大量时间和空间。
一、数据的抽取转换加载–ETL
下图是整体的平台架构:
如上图所示,图中虚线框的部分就是ETL的过程,在这个部分聚焦了海量数据预处理操作。
从各数据源获取数据及在数据仓库内的数据转换和流动都可以认为是ETL的过程。ETL可以认为是数据仓库的血液,它维系着数据仓库中数据的新陈代谢。数据仓库日常的管理和维护工作的大部分精力就是保持ETL的正常和稳定。
那么什么是ETL?
ETL是一个数据管道,负责将分布的、异构的数据(Extract阶段)根据一定的业务规则进行数据清洗、转换、集成(Transform阶段),最终将处理后的数据加载到数据目的地(Load阶段),比如数据仓库。
人们很容易认为,创建数据仓库就是简单地从多个数据源抽取数据,然后加载到数据仓库的数据库中。事实远非如此,在实际业务中ETL过程是非常复杂的,它需要来自各个岗位职责人的积极配合,包括开发人员、分析师、测试人员、高层管理人员。
ETL的重要性:
ETL为企业提供了分析历史数据的可能。
ETL提高了企业工作效率。开发人员可以快速处理数据,省去编写复杂代码的过程。
ETL提供统一的视角来观察、统计、分析数据,促进跨部门、跨组织的合作,为企业决策提供良好的数据支撑。
ETL,也就是抽取加载转换,详细的每个过程也是需要了解的部分。
E:抽取:extract
数据来源:数据库:Oracle、SQL Sever、Flat data等
抽取中,要注意的细节:
检查数据类型;确保数据完整;去除重复数据;去除脏数据;确保导出数据属性与源数据一致。
抽取数据的三种方式:
更新提醒 Update Notification
增量抽取 Incremental Ex