Partilhar via


Transformar dados executando uma atividade Python no Azure Databricks

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Gorjeta

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!

A Atividade Python do Azure Databricks em um pipeline executa um arquivo Python em seu cluster do Azure Databricks. Este artigo baseia-se no artigo de atividades de transformação de dados, que apresenta uma visão geral da transformação de dados e das atividades de transformação suportadas. O Azure Databricks é uma plataforma gerenciada para executar o Apache Spark.

Para uma introdução e demonstração de onze minutos desta funcionalidade, veja o seguinte vídeo:

Adicionar uma atividade Python para o Azure Databricks a um pipeline com a interface do usuário

Para usar uma atividade Python para o Azure Databricks em um pipeline, conclua as seguintes etapas:

  1. Procure Python no painel Atividades do pipeline e arraste uma atividade do Python para a tela do pipeline.

  2. Selecione a nova atividade Python na tela se ainda não estiver selecionada.

  3. Selecione a guia Azure Databricks para selecionar ou criar um novo serviço vinculado do Azure Databricks que executará a atividade do Python.

    Mostra a interface do usuário de uma atividade do Python.

  4. Selecione a guia Configurações e especifique o caminho dentro do Azure Databricks para um arquivo Python a ser executado, parâmetros opcionais a serem passados e quaisquer bibliotecas adicionais a serem instaladas no cluster para executar o trabalho.

    Mostra a interface do usuário da guia Configurações para uma atividade do Python.

Definição de atividade do Databricks Python

Aqui está a definição JSON de exemplo de uma atividade Python Databricks:

{
    "activity": {
        "name": "MyActivity",
        "description": "MyActivity description",
        "type": "DatabricksSparkPython",
        "linkedServiceName": {
            "referenceName": "MyDatabricksLinkedService",
            "type": "LinkedServiceReference"
        },
        "typeProperties": {
            "pythonFile": "dbfs:/docs/pi.py",
            "parameters": [
                "10"
            ],
            "libraries": [
                {
                    "pypi": {
                        "package": "tensorflow"
                    }
                }
            ]
        }
    }
}

Propriedades de atividade do Databricks Python

A tabela a seguir descreve as propriedades JSON usadas na definição JSON:

Property Descrição Obrigatório
nome Nome da atividade no pipeline. Sim
descrição Texto descrevendo o que a atividade faz. Não
tipo Para Databricks Python Activity, o tipo de atividade é DatabricksSparkPython. Sim
linkedServiceName Nome do Databricks Linked Service no qual a atividade Python é executada. Para saber mais sobre esse serviço vinculado, consulte o artigo Serviços vinculados de computação. Sim
pythonFile [en] O URI do arquivo Python a ser executado. Somente caminhos DBFS são suportados. Sim
parâmetros Parâmetros de linha de comando que serão passados para o arquivo Python. Esta é uma matriz de cadeias de caracteres. Não
bibliotecas Uma lista de bibliotecas a serem instaladas no cluster que executará o trabalho. Pode ser uma matriz de <string, objeto> Não

Bibliotecas suportadas para atividades de databricks

Na definição de atividade do Databricks acima, você especifica estes tipos de biblioteca: jar, ovo, maven, pypi, cran.

{
    "libraries": [
        {
            "jar": "dbfs:/mnt/libraries/library.jar"
        },
        {
            "egg": "dbfs:/mnt/libraries/library.egg"
        },
        {
            "maven": {
                "coordinates": "org.jsoup:jsoup:1.7.2",
                "exclusions": [ "slf4j:slf4j" ]
            }
        },
        {
            "pypi": {
                "package": "simplejson",
                "repo": "http://my-pypi-mirror.com"
            }
        },
        {
            "cran": {
                "package": "ada",
                "repo": "https://cran.us.r-project.org"
            }
        }
    ]
}

Para obter mais detalhes, consulte a documentação do Databricks para tipos de biblioteca.

Como carregar uma biblioteca no Databricks

Você pode usar a interface do usuário do espaço de trabalho:

  1. Usar a interface do usuário do espaço de trabalho Databricks

  2. Para obter o caminho dbfs da biblioteca adicionada usando a interface do usuário, você pode usar a CLI do Databricks.

    Normalmente, as bibliotecas Jar são armazenadas em dbfs:/FileStore/jars ao usar a interface do usuário. Você pode listar tudo através da CLI: databricks fs ls dbfs:/FileStore/job-jars

Ou você pode usar a CLI do Databricks:

  1. Seguir Copiar a biblioteca usando a CLI do Databricks

  2. Usar a CLI do Databricks (etapas de instalação)

    Como exemplo, para copiar um JAR para dbfs: dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar