Bạn sẽ nhận thấy rằng chúng tôi đang sử dụng SparkSession và SparkContext và đây không phải là lỗi. Hãy xem lại các biên niên sử của lịch sử Spark cho một quan điểm. Điều quan trọng là phải hiểu chúng tôi đến từ đâu, vì bạn sẽ nghe về những vật thể kết nối này trong một thời gian tới.
Trước Spark 2.0.0, ba đối tượng kết nối chính là SparkContext, SqlContext và HiveContext. Đối tượng SparkContext là kết nối đến môi trường thực thi Spark và tạo RDD và các ngôn ngữ khác, SQLContext đã làm việc với SparkSQL trong nền của SparkContext và HiveContext tương tác với các cửa hàng Hive.
Spark 2.0.0 giới thiệu Tập dữ liệu/DataFrames làm giao diện trừu tượng hóa dữ liệu được phân phối chính và đối tượng SparkSession làm điểm vào cho môi trường thực thi Spark. Một cách thích hợp, đối tượng SparkSession được tìm thấy trong không gian tên, org.apache.spark.sql.SparkSession (Scala), hoặc pyspark.sql.sparkSession. Một vài điểm cần lưu ý như sau:
Trong Scala và Java, Tập dữ liệu tạo thành trừu tượng dữ liệu chính dưới dạng dữ liệu đã nhập; Tuy nhiên, đối với Python và R (mà không cần phải biên dịch kiểm tra kiểu thời gian), dữ liệu ...
https://www.packtpub.com/mapt/book/big_data_and_business_intelligence/9781785889271/4/ch04lvl1sec31/sparksession-versus-sparkcontext
Nguồn
2018-01-26 06:33:33
Tôi không phải là rất chắc chắn nhưng theo ter kiến thức của tôi là không có cách giải quyết – BDR
yea :(nên Nếu không có cách giải quyết nào thì có hai lựa chọn còn lại: sử dụng SparkContext trong ứng dụng của tôi hoặc thêm hỗ trợ cho sparkSession vào ứng dụng tôi đang xây dựng ở trên cùng (đó là spark-jobserver, tôi đang sử dụng nhánh spark-2.0-preview tuy nhiên họ vẫn sử dụng sparkContext) –
Bạn chỉ cần thêm hỗ trợ cho SparkContext bên ngoài vào ứng dụng và truy cập session.sparkContext. Không nên là vấn đề lớn. –