首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在spark中设置textinputformat.record.delimiter

在spark中设置textinputformat.record.delimiter
EN

Stack Overflow用户
提问于 2013-07-17 14:40:48
回答 1查看 5.3K关注 0票数 5

在Spark中,可以设置一些hadoop配置设置,例如

代码语言:javascript
复制
System.setProperty("spark.hadoop.dfs.replication", "1")

这是可行的,复制因子被设置为1。假设是这种情况,我认为这个模式(前缀为"spark.hadoop.“到常规hadoop配置属性),也适用于textinputformat.record.delimiter:

代码语言:javascript
复制
System.setProperty("spark.hadoop.textinputformat.record.delimiter", "\n\n")

然而,似乎spark只是忽略了这个设置。我是否以正确的方式设置textinputformat.record.delimiter?有没有更简单的方法来设置textinputformat.record.delimiter。我希望避免编写自己的InputFormat,因为我真的只需要获取由两个换行符分隔的记录。

EN

回答 1

Stack Overflow用户

发布于 2014-01-03 15:18:52

我用下面的函数来处理普通的未压缩文件。

代码语言:javascript
复制
import org.apache.hadoop.io.LongWritable
import org.apache.hadoop.io.Text
import org.apache.hadoop.conf.Configuration
import org.apache.hadoop.mapreduce.lib.input.TextInputFormat

def nlFile(path: String) = {
    val conf = new Configuration
    conf.set("textinputformat.record.delimiter", "\n")
    sc.newAPIHadoopFile(path, classOf[TextInputFormat], classOf[LongWritable], classOf[Text], conf)
      .map(_._2.toString)
}
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17692857

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档