gpt4 book ai didi

text - Hadoop Mapreduce:TextInputFormat和处理行?

转载 作者:行者123 更新时间:2023-12-02 20:12:11 26 4
gpt4 key购买 nike

我不确定我是否了解TextInputFormat的工作方式。在文档中说:

An InputFormat for plain text files. Files are broken into lines.



因此,我假设当我简单地将作为映射函数输入的值转换为String时,我的文件中会有一行的String表示形式。
    public void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {

String line = value.toString(); \\ one line of my input file?
...

}

但是,在进一步处理该行之后,事实证明它实际上不是我文件中的行。我的文件city.dat看起来像这样:
Andorra la Vella|ad|Andorra la Vella|20430|42.51|1.51
Canillo|ad|Canillo|3292|42.57|1.6
...

谁能告诉我如何在map函数中处理此文件的行?

最佳答案

TextInputFormat用作纯文本文件的InputFormat。文件分为几行。换行或回车符都用来表示行结束。键是文件中的位置,值是文本行。
如果行尾不是换行符或回车符,则必须编写自己的InputFormat。

查看此博客要点。 3它肯定会破坏行尾的行。
http://blog.cloudera.com/blog/2011/01/lessons-learned-from-clouderas-hadoop-developer-training-course/

我建议通过像UltraEdit一样将文件打开到TextEditor中来 checkout 您的文件,并检查换行符。

看看是否有帮助。

关于text - Hadoop Mapreduce:TextInputFormat和处理行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13208445/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com