当前位置:  开发笔记 > 编程语言 > 正文

Spark如何读取文件并在文件名的开头加下划线?

如何解决《Spark如何读取文件并在文件名的开头加下划线?》经验,为你挑选了1个好方法。

当我使用Spark来解析日志文件时,我注意到如果filename的第一个字符是_,则结果将为空.这是我的测试代码:

SparkSession spark = SparkSession
  .builder()
  .appName("TestLog")
  .master("local")
  .getOrCreate();
JavaRDD input = spark.read().text("D:\\_event_2.log").javaRDD();
System.out.println("size : " + input.count());

如果我将文件名修改为event_2.log,代码将正确运行它.我发现该text函数定义为:

@scala.annotation.varargs
def text(paths: String*): Dataset[String] = {
  format("text").load(paths : _*).as[String](sparkSession.implicits.newStringEncoder)
}

我认为这可能是因为_斯卡拉placeholder.我该如何避免这个问题?



1> Kien Truong..:

这与Scala无关.Spark使用Hadoop Input API来读取文件,该文件忽略以下划线(_)或点(.)开头的每个文件

我不知道如何在Spark中禁用它.

推荐阅读
贾志军
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有