В PySpark, чем отличается SparkSession от модуля Spark-CSV от Databricks для импорта файлов CSV? - PullRequest
1 голос
/ 18 октября 2019

Я знаю 2 способа импортировать файл CSV в PySpark:

1) Я могу использовать SparkSession. Вот мой полный код в Jupyter Notebook.

from pyspark import SparkContext
sc = SparkContext()

from pyspark.sql import SQLContext
sqlContext = SQLContext(sc)

from pyspark.sql import SparkSession
spark = SparkSession.builder.appName('Spark Session 1').getOrCreate()

df = spark.read.csv('mtcars.csv', header = True)

2) Я могу использовать модуль Spark-CSV из Databricks.

from pyspark import SparkContext
sc = SparkContext()

from pyspark.sql import SQLContext
sqlContext = SQLContext(sc)

df = sqlContext.read.format('com.databricks.spark.csv').options(header = 'true', inferschema = 'true').load('mtcars.csv')

1) Каковы преимущества SparkSession над Spark-CSV?

2) Каковы преимущества Spark-CSV перед SparkSession?

3) Если SparkSession вполне способен импортировать файлы CSV, почему Databricks изобрели модуль Spark-CSV?

1 Ответ

1 голос
/ 18 октября 2019

Позвольте мне сначала ответить на третий вопрос, так как 2.0.0 spark csv встроен. Но в более старой версии spark мы должны использовать библиотеку spark-csv. Кирпичи данных изобрели spark-csv на ранней стадии (1.3 +).

Чтобы ответить на 1-й и 2-й вопрос, это своего рода сравнение 1.6 и 2.0+. Вы получите все функции, предоставляемые функцией spark-csv + spark 2.0, если будете использовать SparkSession. Если вы используете spark-csv, вы потеряете эти функции.

Надеюсь, это поможет.

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