Partilhar via


Usar o shell do Spark com o Databricks Connect for Python

Nota

Este artigo aborda o Databricks Connect for Databricks Runtime 13.3 LTS e superior.

Este artigo aborda como usar o Databricks Connect para Python e o shell do Spark. O Databricks Connect permite conectar aplicativos populares à computação do Azure Databricks. Consulte O que é Databricks Connect?.

Nota

Antes de começar a usar o Databricks Connect, você deve configurar o cliente Databricks Connect.

O shell do Spark funciona apenas com autenticação de token de acesso pessoal do Azure Databricks.

Para usar o Databricks Connect com o shell do Spark e o Python, siga estas instruções.

  1. Para iniciar o shell do Spark e conectá-lo ao cluster em execução, execute um dos seguintes comandos do ambiente virtual Python ativado:

    Se você tiver definido a SPARK_REMOTE variável de ambiente, execute o seguinte comando:

    pyspark
    

    Se você não tiver definido a SPARK_REMOTE variável de ambiente, execute o seguinte comando:

    pyspark --remote "sc://<workspace-instance-name>:443/;token=<access-token-value>;x-databricks-cluster-id=<cluster-id>"
    

    O shell Spark aparece, por exemplo:

    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'.
    >>>
    

Agora execute um comando simples do PySpark, como spark.range(1,10).show(). Se não houver erros, você se conectou com êxito.

  1. Consulte Análise interativa com o Spark Shell para obter informações sobre como usar o shell do Spark com Python para executar comandos em sua computação.

    Use a variável interna spark para representar o SparkSession cluster em execução, por exemplo:

    >>> 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
    

    Todo o código Python é executado localmente, enquanto todo o código PySpark envolvendo operações DataFrame é executado no cluster no espaço de trabalho remoto do Azure Databricks e as respostas de execução são enviadas de volta ao chamador local.

  2. Para parar o shell do Spark, pressione Ctrl + d ou Ctrl + zou execute o comando quit() ou exit().