数据清洗的几个要点-大数据开发流程

大数据开发流程:

从数据采集-》数据清洗-》数据处理(分析,计算···)

我们采集过来的数据是有问题的,其中可能有脏数据或者无效数据,所以我们想要进行数据处理之前,就要对采集过来的数据先进行一个数据清洗,把脏数据和无效数据过滤掉。

我们在进行数据清洗时都要注意哪些呢?

1.数据的完整性:如果数据不完整就可以被称作无效数据。

2.数据的合法性:不符合数据的合法性的也被称作脏数据,例如,一个人的身高300米。

3.数据的唯一性:保证一条数据的唯一性.比如相同的一个人只有一组信息,不可能出现相同的一个人出现若干条信息

4,数据的全面性:判断数据是否真实,符合常识。

数据清洗中会遇到的问题:

1,空数据:对于一条空数据直接选择删除

2,数据不完整:我们在做数据清洗时,时常会遇到“缺胳膊少腿”的数据,那么这些数据可以被划分为无效数据,可以选择删除,但是呢也可以选择补全数据,补全数据有两个选择:第一个选择,取这个缺失字段的整列平均值.第二个选择:取当前缺失字段的整列频率最高值.但是重要数据列字段我们无法填补,比如性别字段。

3,数据单位不统一:统一单位,比如说薪资的单位就是元。

4.数据重复:保留时间戳最新的那一条数据,剩下重复的数据删除掉

5,错误数据:错误数据无法处理,选择删除。像刚才提到的性别错误,我们无法判断。也无法用平均值和频率补全。

kettle数据清洗的流程

1.获取时间节点最新的表数据,然后根据时间先后查询数据,进行清洗,然后分别输送到各个表。

2.kettle做数据清洗的误区

一个表有百八十十个字段,就需要百八十个清洗控件去处理,而且清洗规则无法有效管理,如果清洗规则改变,所有的清洗控件都要依次去改变。

虽然可以用sql做数据清洗,但是每个数据库的sql语法不一样,所以一旦有不同的数据库中的数据作为来源,你就要重新写sql脚本,开发成本高并且不易维护。还有就是我们的数据的数据源是各种格式的,例如文本格式,Excel表格式,数据库里面的数据,所以说用sql做数据清洗无法满足需求。

数据清洗的几个要点-大数据开发流程_第1张图片

你可能感兴趣的:(数据清洗的几个要点-大数据开发流程)