Spark 2.0、行のデータフレームをケースクラスのデータフレームに変換できることがわかっています。そうしようとすると、spark.implicits._
。私が抱えている問題は、Intellijがそれを有効なインポートステートメントとして認識していないことです。それが移動してメッセージが更新されていないのか、ビルドに正しいパッケージがないのか設定、これは私のbuild.sbt
です
libraryDependencies ++= Seq(
"org.mongodb.spark" % "mongo-spark-connector_2.11" % "2.0.0-rc0",
"org.Apache.spark" % "spark-core_2.11" % "2.0.0",
"org.Apache.spark" % "spark-sql_2.11" % "2.0.0"
)
spark.implicits
というパッケージはありません。
ここでspark
を使用すると、 SparkSession を参照します。 REPLの中にいる場合、セッションはすでにspark
として定義されているため、次のように入力できます。
import spark.implicits._
コードのどこかに独自のSparkSession
を定義している場合は、それに応じて調整します。
val mySpark = SparkSession
.builder()
.appName("Spark SQL basic example")
.config("spark.some.config.option", "some-value")
.getOrCreate()
// For implicit conversions like converting RDDs to DataFrames
import mySpark.implicits._
SparkはSparkSessionにspark
識別子を使用しました。これが混乱の原因です。次のようなもので作成した場合、
val ss = SparkSession
.builder()
.appName("test")
.master("local[2]")
.getOrCreate()
implicits
をインポートする正しい方法は、
import ss.implicits._
これが役立つかどうか教えてください。乾杯。