• 数据仓库-数据清洗


    数据仓库-数据清洗

    定义

    ETL

    抽取(Extract)、转换(Transform)、加载(Load

    ETL的核心价值在"T"所代表的转换部分

    数据清洗是对数据进行重新审查和校验的过程,目的在于删除重复信息、纠正存在的错误,并提供数据一致性

    为什么要进行数据清洗

    数据仓库中的数据是面向某一主题数据的集合,这些数据从多个业务系统中抽取而来,并且包含历史数据,因此就不可避免地出现某些数据是错误的,或者数据相互之间存在冲突的情况。这种数据被称为脏数据。

    按照一定的规则处理脏数据,这个过程就是数据清洗

    任务

    数据清洗的任务是过滤那些不符合要求的数据,将过滤的结果交给业务主管部门,确认是直接删除掉,还是修正之后再进行抽取。

    脏数据类型

    • 残缺的数据

    这一类数据主要是一些应该有的信息缺失,如产品名称、客户名称、客户的区域信息,还包括业务系统中由于缺少外键约束所导致的主表与明细表不能 匹配等。

    • 错误的数据

    这一类错误产生的原因多是业务系统不够健全,在接收输入后没有进行合法性检查或检查不够严格,将有问题的数据直接写入后台数据库造成的,比如 用字符串存储数字、超出合法的取值范围、日期格式不正确、日期越界等。

    • 重复的数据

    源系统中相同的数据存在多份。

    • 差异的数据

    本来具有同一业务含义的数据,因为来自不同的操作型数据源,造成数据不一致。这时需要将非标准的数据转化为在一定程度上的标准化数据。

    数据清洗原则

    优先对数据清洗处理流程进行分析和系统化的设计,针对数据的主要问题和特征,设计一系列数据对照表和数据清洗程序库的有效组合,以便面对不断变化的、形形色色的数据清洗问题。

    清洗流程

    • 预处理

    对于大的数据加载文件,特别是新的文件和数据集合,要进行预先诊断和检测,不能贸然加载。有时需要临时编写程序进行数据清洁检查

    • 标准化处理

    应用建于数据仓库内部的标准字典,对于地区名、人名、公司名、产品名、分类名以及各种编码信息进行标准化处理。

    • 查重

    应用各种数据库查询技术和手段,避免引入重复数据;

    • 出错处理和修正

    将出错的记录和数据写入到日志文件,留待进一步处理。

  • 相关阅读:
    python
    python中xrange和range的区别
    python
    shell用if
    shell调用shell
    An unhandled exception of type 'System.TypeInitializationException' occurred in System.ServiceModel.dll
    C# 获取存在DataTable1不存在DataTable2的数据的快速方法
    textbox自动提示
    全面理解面向对象的 JavaScript(转载)
    C#中文乱码转换
  • 原文地址:https://www.cnblogs.com/EnzoDin/p/14198328.html
Copyright © 2020-2023  润新知