Разница в запуске SparkSession - PullRequest
0 голосов
/ 25 июня 2018

Я относительно новичок в Spark, но я вижу, как оба метода запускают сеанс искры. Может кто-нибудь любезно выделить разницу и ограничения начала сеанса зажигания в обоих этих методах? И почему есть два способа сделать это?

И другой метод

А вот и коды:

# Find path to PySpark.
import collections
import findspark
findspark.init()

# Import PySpark and initialize SparkContext object.
import pyspark
from pyspark.sql import SparkSession

conf = pyspark.SparkConf().setMaster("local[*]").setAppName("RatingsHistogram")
sc = pyspark.SparkContext(conf = conf)
spark = SparkSession(sc)

print('The Spark Version used is "{0}"\n\
The python version used is "{1}"\n\
The default parallelism is "{2}"\n\
The default number of partitions is "{3}"'.format(sc.version,sc.pythonVer,sc.defaultParallelism,sc.defaultMinPartitions))

А другой код

# Find path to PySpark.
import collections
import findspark
findspark.init()

# Import PySpark and initialize SparkContext object.
import pyspark
from pyspark.sql import SparkSession
spark = SparkSession.builder.appName('Basics').getOrCreate()
print(spark.version)

1 Ответ

0 голосов
/ 25 июня 2018

Разница очень тонкая и тонкая.

  1. Подход SparkContext позволяет создавать обычную свечу зажигания.Вы не можете взаимодействовать с другими API напрямую.Если вы хотите взаимодействовать с другими API, вам нужно создать разные контексты.

  2. С подходом SessionBuilder вы можете напрямую взаимодействовать с Hive, Spark Streaming, поскольку все API интегрированы с ним.Не нужно создавать разные контексты для каждого API.

Пожалуйста, обратитесь Документация Spark

Пожалуйста, обратитесь SparkContext против SparkSession

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...