Шаг искрового задания AWS EMR не будет выполнен - PullRequest
0 голосов
/ 24 февраля 2019

Я пытаюсь запустить программу spark на aws.Он просто читает CSV-файл и печатает его с помощью dataframe.show ().Я ждал выполнения шага с последних 15-20 минут, но прогресса не было.Файл CSV внутри корзины s3 очень маленький, всего 10 строк по 2 столбца.Вот моя программа:

import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.log4j.LogManager
import org.apache.log4j.Level
import org.apache.spark.sql.SparkSession
import org.apache.spark.sql._
import org.apache.spark.sql.types._

object TriangleCountMain {
    //Edge object
    case class Edge(from: Int, to: Int)

  def main(args: Array[String]) {
        val logger: org.apache.log4j.Logger = LogManager.getRootLogger
        if (args.length != 2) {
          logger.error("Usage:\nTwitterDataSet_Spark.TriangleCountMain <input dir> <output dir>")
          System.exit(1)
        }

    //Spark Session
    val spark = SparkSession
    .builder()
    .appName("Spark SQL basic example")
    .getOrCreate()

    import spark.implicits._

    //Dataframe structure
    val dfSchema = StructType(Array(
        StructField("from", IntegerType, true),
        StructField("to", IntegerType, true)))


    //Data set of edges
    val nonFilteredEdge: Dataset[Edge] = spark.read
                        .option("header", "false")
                        .option("inferSchema", "true")
                        .schema(dfSchema)
                        .csv(args(0))
                        .as[Edge]


    val edge = nonFilteredEdge
    edge.show
    spark.stop
  }
}

Эта программа успешно работает на локальном компьютере.Спасибо.

...