2016-07-20 7 views
1

私はログファイルを解析するために火花を使用する場合、私は、ファイル名の最初の文字が_であれば、結果は空になり、ここに私のテストコードがあることに気づく:ファイル名の先頭に下線を引くファイルを読み込む方法は?

SparkSession spark = SparkSession 
      .builder() 
      .appName("TestLog") 
      .master("local") 
      .getOrCreate(); 
    JavaRDD<String> 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) 
} 

私はそれが_かもしれないと思うScalaのplaceholderですが、どのように私はこの問題を回避することができます。

ありがとうございました!

+0

http://stackoverflow.com/a/19832011/2214674 – kinkajou

+0

@kinkajouありがとう、重複した問題、そして私は共振を見つける。 – iameven

答えて

4

これはScalaとは関係ありません。 SparkはHadoop Input APIを使用してファイルを読み取り、アンダースコア(_)またはドット(.)で始まるすべてのファイルを無視します。

Sparkでこれを無効にする方法はわかりません。

+0

ありがとう、私はコードをどこで '_ 'とファイルを無視して見つける – iameven

+0

@ iamevenどのようにそれを管理しましたか? – Harshdeep

関連する問題