次のSparkテストプログラムを正常に実行しました。このプログラムでは、SparkContextクラスの "cassandraTable"メソッドと "getOrCreate"メソッドに注目しています。しかし、私はこのクラスのSpark Scala APIドキュメントで見つけることができません。このコードの理解に欠けているものは何ですか?私はDatastax Connectorがsbtにあるとき、このSparkContextがどう違うかを理解しようとしています。DataStax Spark CassandraコネクタはどのようにSparkContextを作成しますか?
コード -
import org.apache.spark.{SparkContext, SparkConf}
import com.datastax.spark.connector._
object CassandraInt {
def main(args:Array[String]){
val SparkMasterHost = "127.0.0.1"
val CassandraHost = "127.0.0.1"
val conf = new SparkConf(true)
.set("spark.cassandra.connection.host", CassandraHost)
.set("spark.cleaner.ttl", "3600")
.setMaster("local[12]")
.setAppName(getClass.getSimpleName)
// Connect to the Spark cluster:
lazy val sc = SparkContext.getOrCreate(conf)
val rdd = sc.cassandraTable("test", "kv")
println(rdd.count)
println(rdd.map(_.getInt("value")).sum)
}}
私が使用しbuild.sbtファイルがある -
name := "Test Project"
version := "1.0"
scalaVersion := "2.11.7"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.0.0"
libraryDependencies += "org.apache.spark" %% "spark-sql" % "2.0.0"
addCommandAlias("c1", "run-main CassandraInt")
libraryDependencies += "com.datastax.spark" %% "spark-cassandra-connector" % "2.0.0-M3"
fork in run := true