Estoy creando un Scala programa para SQLContext el uso de sbt. Esta es mi build.sbt:

name := "sampleScalaProject"

version := "1.0"

scalaVersion := "2.11.7"
//libraryDependencies += "org.apache.spark" %% "spark-core" % "2.5.2"
libraryDependencies += "org.apache.spark" % "spark-core_2.11" % "1.5.2"
libraryDependencies += "org.apache.kafka" % "kafka_2.11" % "0.8.2.2"
libraryDependencies += "org.apache.spark" % "spark-streaming_2.11" % "1.5.2"
libraryDependencies += "org.apache.spark" % "spark-sql_2.11" % "1.5.2"
libraryDependencies += "org.apache.hadoop" % "hadoop-common" % "2.6.0"  

Y este es el programa de prueba:

import org.apache.spark.SparkContext
import org.apache.spark.sql.SQLContext

object SqlContextSparkScala {

  def main (args: Array[String]) {
    val sc = SparkContext
    val sqlcontext = new SQLContext(sc)
  }
} 

Estoy consiguiendo el siguiente mensaje de error:

Error:(8, 26) overloaded method constructor SQLContext with alternatives:
  (sparkContext: org.apache.spark.api.java.JavaSparkContext)org.apache.spark.sql.SQLContext <and>
  (sparkContext: org.apache.spark.SparkContext)org.apache.spark.sql.SQLContext
 cannot be applied to (org.apache.spark.SparkContext.type)
    val sqlcontexttest = new SQLContext(sc)  

Puede alguien por favor hágamelo saber el tema como yo soy muy nuevo en scala y la chispa de programación?

InformationsquelleAutor Aman | 2015-12-21

4 Comentarios

  1. 2

    Simplemente podemos crear SQLContext en scala

    scala> val sqlContext = new org.apache.spark.sql.SQLContext(sc);    
  2. 2

    Para las versiones más recientes de Chispa (2.0+), el uso de SparkSession:

    val spark = new SparkSession.builder.getOrCreate()

    SparkSession puede hacer todo lo que SQLContext puede hacer, pero si es necesario el SQLContext se puede acceder de la siguiente manera,

    val sqlContext = spark.sqlContext
  3. -1
    val conf = new SparkConf().setAppName("SparkJoins").setMaster("local")
    val sc = new SparkContext(conf);
    val sqlContext = new org.apache.spark.sql.SQLContext(sc);    

Dejar respuesta

Please enter your comment!
Please enter your name here