Поделиться через


Оболочка PySpark

Примечание.

В этой статье рассматривается Databricks Connect для Databricks Runtime версии 14.0 и выше.

Databricks Connect для Python поставляется с двоичным файлом pyspark, который представляет собой PySpark REPL (оболочка Spark), настроенный для использования Databricks Connect.

Запуск оболочки

Чтобы запустить оболочку Spark и подключить ее к работающему кластеру, выполните следующую команду из активированной виртуальной среды Python.

Примечание.

При запуске без дополнительных параметров оболочка выбирает учетные данные по умолчанию из среды (например, DATABRICKS_ переменные среды или DEFAULT профиль конфигурации) для подключения к кластеру Azure Databricks. Сведения о настройке подключения см. в разделе "Конфигурация вычислений" для Databricks Connect.

pyspark

Появится оболочка Spark, например:

Python 3.10 ...
[Clang ...] on darwin
Type "help", "copyright", "credits" or "license" for more information.
Welcome to
      ____              __
      / __/__  ___ _____/ /__
   _\ \/ _ \/ _ `/ __/  '_/
   /__ / .__/\_,_/_/ /_/\_\   version 13.x.dev0
      /_/

Using Python version 3.10 ...
Client connected to the Spark Connect server at sc://...:.../;token=...;x-databricks-cluster-id=...
SparkSession available as 'spark'.
>>>

После запуска оболочки spark объект становится доступен для выполнения команд Apache Spark в кластере Databricks. Выполните простую команду PySpark, например spark.range(1,10).show(). Если ошибки отсутствуют, вы успешно подключились.

Используйте оболочку

Чтобы узнать, как использовать оболочку Spark с Python для выполнения команд в вычислительных средах, обратитесь к интерактивному анализу с помощью Оболочки Spark.

Используйте встроенную spark переменную для представления SparkSession в работающем кластере, например:

>>> df = spark.read.table("samples.nyctaxi.trips")
>>> df.show(5)
+--------------------+---------------------+-------------+-----------+----------+-----------+
|tpep_pickup_datetime|tpep_dropoff_datetime|trip_distance|fare_amount|pickup_zip|dropoff_zip|
+--------------------+---------------------+-------------+-----------+----------+-----------+
| 2016-02-14 16:52:13|  2016-02-14 17:16:04|         4.94|       19.0|     10282|      10171|
| 2016-02-04 18:44:19|  2016-02-04 18:46:00|         0.28|        3.5|     10110|      10110|
| 2016-02-17 17:13:57|  2016-02-17 17:17:55|          0.7|        5.0|     10103|      10023|
| 2016-02-18 10:36:07|  2016-02-18 10:41:45|          0.8|        6.0|     10022|      10017|
| 2016-02-22 14:14:41|  2016-02-22 14:31:52|         4.51|       17.0|     10110|      10282|
+--------------------+---------------------+-------------+-----------+----------+-----------+
only showing top 5 rows

Весь код Python выполняется локально, в то время как весь код PySpark с участием операций DataFrame выполняется в кластере в удаленной рабочей области Azure Databricks и ответы запуска отправляются обратно в локальный вызывающий объект.

Остановить оболочку

Чтобы остановить оболочку Spark, нажмите Ctrl + d или Ctrl + zвыполните команду или выполните командуquit().exit()