Карта искр с классом корпуса и фильтром - PullRequest
0 голосов
/ 19 сентября 2018

У меня есть текстовый файл с форматом ниже

2018-01-19 12:00 Info

2018-01-20 12:00 Info

2018-01-21 12:00 Error

Код, который я написал с помощью функции множественного сопоставления для класса дел и фильтрации на основе ошибок или информации. Есть ли лучший способ записи, уменьшив количество карт?используемая функция?

case class Test(date: String, time: String, log: String)

  val input = sc.textFile(inputPath)
    val filter = input.map(x => x.split(" ")).map(x => Test(x(0), x(1), x(2))).filter(_.log == "[" + logLevel + "]")
    val mapCount = filter.map { case Test(f1, f2, f3) => (f1, 1) }
    mapCount.persist()
    val r = mapCount.reduceByKey(_ + _).collect
    val rd = sc.makeRDD(r.toList).saveAsTextFile(outputPath)

Вывод при передаче информации как logLevel равен

(2018-01-19 ,1)

(2018-01-20  ,1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...