首页 > 解决方案 > hdfs文件中的数据清理要求

问题描述

我有一个如下所示的 CSV 文件,我需要在 hadoop 中应用数据清理技术。该文件包含数十万条记录,但为方便起见,我只给出了 4 条记录。

field1,field2,field3,field4
1,abc,def,ghi
4,ijk,
,lmn
5,,opq,rst
8,
uvw,,xyz
10,hjg,jsh,nbm

我希望输出结果为

field1,field2,field3,field4
1,abc,def,ghi
4,ijk,,lmn
5,,opq,rst
8,uvw,,xyz
10,hjg,jsh,nbm

我是hadoop的新手。在 Hadoop 中最好、最简单、最优化的方法是什么?在 Hive 中可行吗?

一旦实现这一点,如果有任何特殊字符,我需要用空格替换它们。

标签: scalahive

解决方案


为什么你的记录在不同的行是这样的?4,ijk, ,lm

我能想到的(如果你很了解 scala)是,

在 CSV 文件之上创建一个平面图。以逗号分隔

For 循环 - 将数据移动到 4 个元素的数组中,

到达第 4 行后,立即前往下一行


推荐阅读