क्या मैं एक तक पहुंच सकता हूं DataFrame
विभिन्न से SparkSession
रों?
उत्तर:
जवाब के लिए 2 № 1tl; डॉ नहीं, डेटाफ्रेम को साझा करना संभव नहीं है SparkSessions
.
ए DataFrame
एक सिंगल में रहता है SparkSession
(बस एक की तरह RDD
अंदर SparkContext
) जो इसकी दृश्यता के दायरे को परिभाषित करता है। मालिकाना SparkSession
ए का एक अभिन्न हिस्सा बन जाता है DataFrame
जिसे आप परिभाषा में देख सकते हैं Dataset
कन्स्ट्रक्टर टाइप करें:
class Dataset[T] private[sql](
@transient val sparkSession: SparkSession, // <-- here
@DeveloperApi @InterfaceStability.Unstable @transient val queryExecution: QueryExecution,
encoder: Encoder[T])
extends Serializable {
आप तक पहुंच सकते हैं SparkSession
ए DataFrame
उपयोग करने के लिए आता है sparkSession
विशेषता:
scala> val df = Seq(1,2,3).toDF("id")
df: org.apache.spark.sql.DataFrame = [id: int]
scala> df.sparkSession
res0: org.apache.spark.sql.SparkSession = org.apache.spark.sql.SparkSession@4832813d
scala> df.sparkSession == spark
res1: Boolean = true
जवाब के लिए 0 № 2
आप हमेशा उस डेटाफ्रेम को लिख सकते हैं जिसे आप फिर से उपयोग करना चाहते हैं, फिर अगली बार इसे पढ़ें।
उत्तर № 3 के लिए -1
उपयोग Global_temp_view और चूंकि यह सत्र-स्कोप्ड है, उस सत्र को समाप्त न करें जिसके साथ आपने डेटाफ्रेम बनाया है।