VE
Size: a a a
VE
VE
RI
kafkaDStream.foreachRDD { rdd =>
if (!rdd.isEmpty()) {
val df = rdd.toDF().as[A]
val spark =
SparkSession.builder.config(rdd.sparkContext.getConf).getOrCreate()
import spark.implicits._
df.collect().foreach(_ => ()) но этот вариант плох тем, что все вычисление пойдет на одном драйвере(как я понимаю). если убрать collect сразу получаю ошибку с A master URL must be set in your configurationAZ
VE
AZ
AB
DP
RI
kafkaDStream.foreachRDD { rdd =>
if (!rdd.isEmpty()) {
val df = rdd.toDF().as[A]
val spark =
SparkSession.builder.config(rdd.sparkContext.getConf).getOrCreate()
import spark.implicits._
df.collect().foreach(_ => ()) но этот вариант плох тем, что все вычисление пойдет на одном драйвере(как я понимаю). если убрать collect сразу получаю ошибку с A master URL must be set in your configurationAC
kafkaDStream.foreachRDD { rdd =>
if (!rdd.isEmpty()) {
val df = rdd.toDF().as[A]
val spark =
SparkSession.builder.config(rdd.sparkContext.getConf).getOrCreate()
import spark.implicits._
df.collect().foreach(_ => ()) но этот вариант плох тем, что все вычисление пойдет на одном драйвере(как я понимаю). если убрать collect сразу получаю ошибку с A master URL must be set in your configurationRI
AC
RI
RI
R
RI
R
RI
R
df = spark.read.format("parquet").load("s3a://something")
df.createOrReplaceTempView("view1")me_results = spark.sql("select c1,c2 from view1").collect()
То в переменную some_results будут собраны результаты исполнения запроса, но сам по себе view1 не будет держать никаких данных.R
df = spark.read.format("parquet").load("s3a://something-else").cache()
print(df.count()) // trigger caching
df.createOrReplaceTempView("view2")