Hadoop:是否可以在hdfs中编辑文件?

时间:2014-07-31 15:06:28

标签: java hadoop

我希望java代码将csv文件(在HDFS中)拆分为3个文件而不将其移动到本地计算机。这必须在HDFS内完成。

2 个答案:

答案 0 :(得分:0)

你只需要阅读一些文档... Here是一个很好的帖子,你可能会自己找到解决方案,它只是一个java程序:)

答案 1 :(得分:0)

需要有关您的问题的更多详细信息。 您是否只想将文件拆分为3个随机大小的文件,或者您是否有必须拆分文件的业务要求。

但无论您的情况如何,您都可以单独编写Mapper并将映射器的输出保存到文件中,或者您可以编写Pig脚本来执行相同操作。

示例Pig脚本(假设您已在计算机上安装了Pig)

假设您输入的文件是下面给出的文件并保存为InputData.txt

Shabbir           Khan             9314573259     Bangalore        Engineer

Manish            Sharma        8882148796     Gurgaon           Lecturer

Mahesh           Kumar          8521548932     Noida                Business

Sampath         Reddy           8547987412     Hyderabad         Engineer

Mohan            Reddy           9256458798     Hyderabad         Professor

Pig脚本根据我只需要City作为Hyderabad的记录来加载和存储文件。

A = LOAD 'InputData.txt' using PigStorage (‘\t’) as (FName: chararray, LName: chararray, MobileNo: chararray, City: chararray, Profession: chararray);
FilteredLst = FILTER A BY City='Hyderabad';
store FilteredLst '/user/output';