Автор пакетов в рабочей области

Декларативные пакеты автоматизации можно создавать и изменять непосредственно в рабочей области.

Требования к использованию пакетов в рабочей области см. в разделе "Декларативные пакеты автоматизации" в требованиях к рабочей области.

Дополнительные сведения о пакетах см. в разделе "Что такое декларативные пакеты автоматизации?".

Создание пакета

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

  1. Перейдите в папку Git, в которой вы хотите создать пакет.

  2. Нажмите кнопку Create, затем нажмите Bundle. Кроме того, щелкните правой кнопкой мыши папку Git или связанный с ним кебаб в дереве рабочей области и нажмите кнопку "Создать>пакет".

    Создание пакета

  3. В диалоговом окне "Создание пакета " присвойте пакету имя, например полностью удивительный пакет. Имя пакета может содержать только буквы, цифры, дефисы и символы подчеркивания.

  4. Для Template выберите, нужно ли создать пакет с помощью пользовательского шаблона, пустого пакета, пакета, запускающего пример Python записной книжки, или пакет, на котором выполняется SQL. Если у вас включен редактор конвейеров Lakeflow, вы также увидите опцию для создания проекта ETL-конвейера. Все пользовательские шаблоны , настроенные в рабочей области, также будут доступны.

    Диалоговое окно создания нового пакета

  5. Для некоторых шаблонов требуется дополнительная настройка. Нажмите кнопку "Далее ", чтобы завершить настройку проекта.

    Template Параметры конфигурации
    Конвейеры Lakeflow
    • Каталог по умолчанию для использования для данных конвейера
    • Использование личной схемы (рекомендуется) для каждого пользователя, совместно работающего с этим пакетом.
    • Начальный язык для файлов кода в конвейере
    Python по умолчанию
    • Включение примера записной книжки
    • Включите пример конвейера
    • Включение примера пакета Python
    • Использование бессерверных вычислений
    SQL по умолчанию
    • Путь к хранилищу SQL
    • Исходный каталог
    • Использование личной схемы
    • Начальная схема во время разработки
  6. Нажмите кнопку "Создать" и развернуть.

При этом создается начальный пакет в папке Git, включающую файлы для выбранного шаблона проекта, .gitignore файла конфигурации Git и требуемый файл декларативных databricks.yml пакетов автоматизации. Файл databricks.yml содержит основную конфигурацию пакета. Дополнительные сведения см. в разделе "Декларативная конфигурация пакетов автоматизации".

Новый пакет

Любые изменения, внесенные в файлы в пакете, можно синхронизировать с удаленным репозиторием, связанным с папкой Git. Папка Git может содержать множество пакетов.

Добавление новых файлов в пакет

Пакет содержит файл databricks.yml, который определяет конфигурации развертывания и рабочего пространства, исходные файлы, такие как ноутбуки, файлы Python и тестовые файлы, а также определения и настройки ресурсов Databricks, таких как задания Lakeflow и конвейеры Lakeflow. Как и в любой папке рабочей области, вы можете добавить новые файлы в пакет.

Подсказка

Чтобы открыть новую вкладку в представлении пакета, которое позволяет изменять файлы пакета, перейдите в папку пакета в рабочей области, а затем нажмите кнопку "Открыть в редакторе " справа от имени пакета.

Добавление файлов исходного кода

Чтобы добавить новые записные книжки или другие файлы в пакет в пользовательском интерфейсе рабочей области, перейдите в папку пакета, а затем:

  • Нажмите кнопку "Создать " в правом верхнем углу и выберите один из следующих типов файлов, чтобы добавить в пакет: записная книжка, файл, запрос, панель мониторинга.
  • Кроме того, щелкните кебаб слева от общего доступа и импортируйте файл.

Замечание

Чтобы файл был частью развертывания пакета, после добавления файла в папку пакета необходимо добавить его в databricks.yml конфигурацию пакета или создать файл определения задания или конвейера, который включает его. См. статью "Добавление существующего ресурса в пакет".

Создание определения ресурса

Пакеты содержат определения ресурсов, таких как задания и конвейеры для включения в развертывание. При развертывании пакета ресурсы, определенные в пакете, создаются в рабочей области (или обновляются, если они уже развернуты). Эти определения указаны в YAML или Python, и вы можете создавать и изменять эти конфигурации непосредственно в пользовательском интерфейсе.

  1. Перейдите в папку пакета в рабочей области, в которой необходимо определить новый ресурс.

    Подсказка

    Если вы уже открывали пакет в редакторе рабочего пространства, он отображается как пространство. См. Пробелы.

  2. Справа от имени пакета нажмите кнопку "Открыть в редакторе ", чтобы перейти к представлению редактора пакета.

  3. Щелкните значок развертывания для пакета, чтобы перейти на панель "Развертывания ".

    Значок панели развертывания

  4. В разделе "Ресурсы пакета " нажмите кнопку "Добавить", а затем выберите определение ресурса для создания.

Новое определение задания

Чтобы создать файл конфигурации пакета, определяющий задание:

  1. В разделе "Ресурсы пакета " на панели "Развертывания" нажмите кнопку "Добавить" и " Создать определение задания".

    Создание определения задания

  2. Введите имя задания в поле "Имя задания" диалогового окна "Создание определения задания ". Нажмите кнопку Создать.

  3. Добавьте YAML в созданный файл определения задания. В следующем примере YAML определяется задание, которое запускает записную книжку:

    resources:
      jobs:
        run_notebook:
          name: run-notebook
          queue:
            enabled: true
          tasks:
            - task_key: my-notebook-task
              notebook_task:
                notebook_path: ../helloworld.ipynb
    

Дополнительные сведения об определении задания в YAML см. в разделе "Задание". Синтаксис YAML для других поддерживаемых типов задач задания см. в разделе "Добавление задач в задания в декларативных пакетах автоматизации".

Новое определение конвейера

Замечание

Если вы включили Редактор конвейеров Lakeflow в рабочей области, ознакомьтесь с Новый конвейер ETL.

Чтобы добавить определение конвейера в пакет:

  1. В разделе "Ресурсы пакета " панели "Развертывания" нажмите кнопку "Добавить", а затем "Создать определение конвейера".

  2. Введите имя конвейера в поле "Имя конвейера" в существующем диалоговом окне "Добавление конвейера ".

  3. Нажмите кнопку "Добавить" и развернуть.

Для конвейера с именем test_pipeline, выполняющего записную книжку, в файле test_pipeline.pipeline.yml создается следующий YAML:

resources:
  pipelines:
    test_pipeline:
      name: test_pipeline
      libraries:
        - notebook:
            path: ../test_pipeline.ipynb
      serverless: true
      catalog: main
      target: test_pipeline_${bundle.environment}

Вы можете изменить конфигурацию для запуска существующей записной книжки. Дополнительные сведения об определении конвейера в YAML см. в разделе "Конвейер".

Новый конвейер ETL

Чтобы добавить новое определение конвейера ETL:

  1. В разделе "Ресурсы пакета " на панели "Развертывания" нажмите кнопку "Добавить" и "Создать конвейер ETL".

  2. Введите имя для конвейера в поле Имя диалогового окна Добавить конвейер в существующий пакет. Имя должно быть уникальным в рабочей области.

  3. В поле "Использовать личную схему " выберите "Да " для сценариев разработки и "Нет " для рабочих сценариев.

  4. Выберите каталог по умолчанию и схему по умолчанию для конвейера.

  5. Выберите язык исходного кода конвейера.

  6. Нажмите кнопку "Добавить" и развернуть.

    Создание диалогового окна конвейера ETL

  7. Просмотрите сведения в диалоговом окне подтверждения развертывания для разработки , а затем нажмите кнопку "Развернуть".

Конвейер ETL создается с примерами таблиц исследования и преобразования.

Конвейер ETL в пакете в рабочей области

Для конвейера с именем rad_pipelineв файле rad_pipeline.pipeline.ymlсоздается следующий YAML. Этот конвейер настроен для запуска на бессерверных вычислениях. Справочник по конфигурации конвейера см. в разделе "Конвейер".

resources:
  pipelines:
    rad_pipeline:
      name: rad_pipeline
      libraries:
        - glob:
            include: transformations/**
      serverless: true
      catalog: main
      schema: ${workspace.current_user.short_name}
      root_path: .

Новое определение панели мониторинга

Чтобы создать файл конфигурации пакета, определяющий панель мониторинга:

  1. В разделе "Ресурсы пакета " панели "Развертывания" нажмите кнопку "Добавить" и " Создать определение панели мониторинга".

  2. Введите имя панели мониторинга в поле "Имя панели мониторинга " в существующем диалоговом окне "Добавление панели мониторинга ".

  3. Выберите хранилище для панели мониторинга. Нажмите кнопку "Добавить" и развернуть.

В пакете создается новая пустая панель мониторинга и файл конфигурации *.dashboard.yml . Панель мониторинга хранится в хранилище, указанном в файле конфигурации.

Дополнительные сведения о панелях мониторинга см. в разделе "Панели мониторинга". Для получения информации о синтаксисе YAML для конфигурации панели мониторинга см. dashboard.

Добавление существующего ресурса в пакет

Вы можете добавить существующие ресурсы в пакет с помощью пользовательского интерфейса рабочей области или добавить конфигурацию ресурсов в пакет.

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

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

  1. Перейдите в папку пакета в рабочей области, в которой требуется добавить ресурс.

    Подсказка

    Если вы уже открывали пакет в редакторе рабочего пространства, он отображается как пространство. См. Пробелы.

  2. Справа от имени пакета нажмите кнопку "Открыть в редакторе ", чтобы перейти к представлению редактора пакета.

  3. Щелкните значок развертывания для пакета, чтобы перейти на панель "Развертывания ".

  4. В разделе "Ресурсы пакета " нажмите кнопку "Добавить", а затем нажмите кнопку "Добавить существующее задание", "Добавить существующий конвейер" или "Добавить существующую панель мониторинга".

    Добавление существующего задания, конвейера или панели мониторинга

  5. В диалоговом окне "Добавление существующего ..." выберите существующий ресурс в раскрывающемся списке.

  6. При добавлении существующего ресурса в пакет Databricks создается определение в файле конфигурации пакета для этого ресурса. Так как вы можете изменить это определение в пакете, ресурс, определенный в пакете, может отходить от ресурса, используемого для его создания.

    Выберите вариант обработки обновлений конфигурации ресурса пакета:

    • Обновление рабочих развертываний: существующий ресурс становится связанным с ресурсом в пакете, и любые изменения, внесенные в ресурс в пакете, применяются к существующему ресурсу при развертывании в целевом объекте prod .
    • Обновление развертывания разработки: существующий ресурс становится связанным с ресурсом в пакете, и все изменения, внесенные в ресурс в пакете, применяются к существующему ресурсу при развертывании в целевом объекте dev .
    • (Дополнительно) Не обновляйте: существующий ресурс не связан с пакетом. Изменения, внесенные в ресурс в пакете, никогда не применяются к существующему ресурсу. Вместо этого создается копия. Дополнительные сведения о привязке ресурсов пакета к соответствующему ресурсу рабочей области см. в привязке развертывания пакета databricks.
  7. Нажмите кнопку "Добавить ..." , чтобы добавить существующий ресурс в пакет.

Добавление конфигурации пакета

Существующий ресурс также можно добавить в пакет, определив конфигурацию пакета, чтобы включить ее в развертывание пакета. В следующем примере в пакет добавляется существующий конвейер.

Предположим, что у вас есть конвейер с именем taxifilter , который запускает записную книжку taxifilter.ipynb в общей рабочей области:

  1. На боковой панели рабочей области Azure Databricks щелкните "Задания и конвейеры".

  2. При необходимости выберите фильтры "Конвейеры " и " Принадлежащие мне ".

  3. Выберите существующий taxifilter конвейер.

  4. На странице конвейера нажмите кебаб слева от кнопки режима развертывания разработки . Затем нажмите кнопку "Просмотреть параметры YAML".

  5. Щелкните значок копирования, чтобы скопировать конфигурацию пакета для конвейера.

  6. Перейдите к пакету в рабочей области.

  7. Щелкните значок развертывания для пакета, чтобы перейти на панель "Развертывания ".

  8. В разделе "Ресурсы пакета " нажмите кнопку "Добавить" и " Создать определение конвейера".

    Замечание

    Если вместо этого вы видите пункт меню Новый конвейер ETL, значит в редакторе Конвейеров Lakeflow включен. Сведения о добавлении конвейера ETL в пакет см. в статье "Создание управляемого источником конвейера".

  9. Введите taxifilter поле "Имя конвейера " в диалоговом окне "Добавление конвейера в существующий пакет ". Нажмите кнопку Создать.

  10. Вставьте конфигурацию существующего конвейера в файл. Этот пример конвейера определен для запуска записной книжки taxifilter :

    resources:
      pipelines:
        taxifilter:
          name: taxifilter
          catalog: main
          libraries:
            - notebook:
                path: /Workspace/Shared/taxifilter.ipynb
          target: taxifilter_${bundle.environment}
    

Теперь можно развернуть пакет, а затем запустить ресурс конвейера через пользовательский интерфейс.

Изменение ресурсов пакета

Important

Эта функция доступна в бета-версии.

Вы можете изменять задания и конвейеры, которые являются частью пакета непосредственно в пользовательском интерфейсе рабочей области. Изменения автоматически применяются к конфигурации YAML для этих ресурсов в пакете.

Чтобы изменить задание или конвейер в пакете:

  1. На панели Развертывания в редакторе пакета нажмите задание или конвейер в разделе Ресурсы пакета, чтобы открыть задание или конвейер.
  2. Внесите изменения в задание или конвейер, например добавьте задачу в записной книжке или измените схему конвейера.
  3. В рабочей области появится уведомление, подтверждающее, что изменения в задании или конвейере были применены к конфигурации комплекта. Щелкните ссылку НА ФАЙЛ YAML в уведомлении, чтобы просмотреть изменения конфигурации в редакторе пакета.
  4. Разверните пакет, чтобы изменения конфигурации были применены при развертывании.

Замечание

Редактирование ресурсов всегда отключено в рабочем режиме.

Ограничения

Следующие ограничения применяются к редактированию ресурсов в рабочей области:

  • При изменении поля, значение которого поступает из переменной пакета или подстановки, изменение обновляет только это поле. Он не обновляет определение переменной, поэтому другие поля, ссылающиеся на ту же переменную, не затрагиваются.
  • Изменение разрешений для задания пока не поддерживается.
  • Планирование конвейера или панели мониторинга создает задание, которое запускает ресурс по расписанию, но задание и связанный конвейер или панель мониторинга не связаны, а расписания не отображаются в пользовательском интерфейсе конвейеров или панелей мониторинга. Чтобы изменить расписание, измените триггер в созданном задании.