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


Преобразование данных с помощью выполнения действий Python в Azure Databricks

ОБЛАСТЬ ПРИМЕНЕНИЯ: Фабрика данных Azure Azure Synapse Analytics

Совет

Опробуйте Фабрику данных в Microsoft Fabric— решение для аналитики "все в одном" для предприятий. Microsoft Fabric охватывает все, от перемещения данных до обработки и анализа данных, аналитики в режиме реального времени, бизнес-аналитики и отчетов. Узнайте, как начать новую пробную версию бесплатно!

Действие Python в Azure Databricks в конвейере позволяет запустить файл Python в кластере Azure Databricks. Данная статья основана на материалах статьи о действиях преобразования данных , в которой приведен общий обзор преобразования данных и список поддерживаемых действий преобразования. Azure Databricks — это управляемая платформа для запуска Apache Spark.

Уделите 11 минут вашего времени, чтобы просмотреть следующее видео с кратким обзором и демонстрацией этой функции:

Добавление действия Python для Azure Databricks в конвейер с помощью пользовательского интерфейса

Чтобы использовать действие Python для Azure Databricks в конвейере, выполните следующие действия:

  1. Выполните поиск элемента Python на панели конвейера "Действия" и перетащите действие Python на холст конвейера.

  2. Выберите новое действие Python на холсте, если оно еще не выбрано.

  3. Перейдите на вкладку Azure Databricks, чтобы выбрать или создать новую связанную службу Azure Databricks, которая будет выполнять действие Python.

    Отображает пользовательский интерфейс для действия Python.

  4. Перейдите на вкладку Параметры и укажите путь в Azure Databricks к файлу Python для выполнения, необязательные параметры, которые необходимо передать, и дополнительные библиотеки, которые будут установлены в кластере для выполнения задания.

    Отображает пользовательский интерфейс для вкладки Параметры для действия Python.

Определение действия Python в Databricks

Пример определения JSON для действия 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"
                    }
                }
            ]
        }
    }
}

Свойства действия Python в Databricks

В следующей таблице приведено описание свойств, используемых в определении JSON.

Свойство Описание Обязательно
name Имя действия в конвейере. Да
description Описание действия. Нет
type Тип действия Python в Databricks — DatabricksSparkPython. Да
linkedServiceName Имя связанной службы Databricks, в которой выполняется действие Python. Дополнительные сведения об этой связанной службе см. в статье Вычислительные среды, поддерживаемые фабрикой данных Azure. Да
pythonFile URI файла Python, который будет выполнен. Поддерживаются только пути DBFS. Да
parameters Параметры командной строки, которые будут переданы в файл Python. Массив строк. Нет
libraries Список библиотек, которые должны быть установлены на кластере, на котором будет выполнено задание. Это может быть массив <string, object> Нет

Поддерживаемые библиотеки для действий Databricks

В приведенном выше определении действия Databricks необходимо указать следующие типы библиотек: jar, egg, 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"
            }
        }
    ]
}

Дополнительные сведения см. в документации Databricks по типам библиотек.

Отправка библиотеки в Databricks

Вы можете использовать пользовательский интерфейс рабочей области:

  1. Использование пользовательского интерфейса рабочей области Databricks

  2. Чтобы получить путь к dbfs библиотеки, добавленной с помощью пользовательского интерфейса, можно использовать интерфейс командной строки Databricks.

    Обычно библиотеки Jar, добавленные с помощью пользовательского интерфейса, хранятся в каталоге dbfs:/FileStore/jars. Вы можете получить список всех библиотек, выполнив следующую команду в интерфейсе командной строки: databricks fs ls dbfs:/FileStore/job-jars.

Или можно использовать интерфейс командной строки Databricks:

  1. Затем выполните Копирование библиотеки с помощью интерфейса командной строки Databricks

  2. Используйте интерфейс командной строки Databricks (действия по установке)

    Например, чтобы скопировать JAR-файл в dbfs: dbfs cp SparkPi-assembly-0.1.jar dbfs:/docs/sparkpi.jar