execução o senhor Databricks Job com serverless compute para fluxo de trabalho

Visualização

serverless compute O fluxo de trabalho está em Public Preview. Para obter informações sobre elegibilidade e habilitação, consulte Enable serverless compute public preview.

Importante

Como a visualização pública do serverless compute para fluxo de trabalho não oferece suporte ao controle do tráfego de saída, seu trabalho tem acesso total à Internet.

serverless compute O for fluxo de trabalho permite que o senhor execute seu Databricks Job sem configurar e implantar infraestrutura. Com o serverless compute, o senhor se concentra na implementação do pipeline de análise e processamento de dados e Databricks gerencia com eficiência o compute recurso, incluindo a otimização e o dimensionamento do compute para suas cargas de trabalho. autoscale e Photon são ativados automaticamente para o compute recurso que executa seu Job.

serverless compute A otimização automática do for fluxo de trabalho otimiza automaticamente o site compute, selecionando o recurso apropriado, como tipos de instância, memória e mecanismos de processamento com base em sua carga de trabalho. A otimização automática também tenta novamente, de forma automática, os trabalhos com falha.

Databricks atualiza automaticamente a versão do Databricks Runtime para oferecer suporte a aprimoramentos e atualizações da plataforma, garantindo a estabilidade do seu trabalho no Databricks. Para ver a versão atual do Databricks Runtime usada pelo serverless compute para fluxo de trabalho, consulte serverless compute notas sobre a versão.

Como a permissão de criação do cluster não é necessária, todos os usuários do workspace podem usar o serverless compute para executar seu fluxo de trabalho.

Este artigo descreve o uso da UI Databricks Jobs para criar e executar trabalhos que usam serverless compute. O senhor também pode automatizar a criação e a execução de trabalhos que usam serverless compute com os Jobs API, Databricks ativo Bundles e o Databricks SDK para Python.

  • Para saber mais sobre como usar o Jobs API para criar e executar trabalhos que usam serverless compute, consulte Jobs na referência REST API .

  • Para saber mais sobre como usar Databricks ativo Bundles para criar e executar trabalhos que usam serverless compute, consulte Develop a Job on Databricks by using Databricks ativo Bundles.

  • Para saber mais sobre como usar o Databricks SDK para Python para criar e executar trabalhos que usam serverless compute, consulte Databricks SDK para Python.

Requisitos

  • Seu Databricks workspace deve ter o Unity Catalog ativado.

  • Como o serverless compute para fluxo de trabalho usa o modo de acesso compartilhado, suas cargas de trabalho devem suportar esse modo de acesso.

  • Seu site Databricks workspace deve estar em uma região compatível. Consulte Databricks clouds e regiões.

Criar um Job usando serverless compute

serverless compute é compatível com os Notebook Python dbt Python wheel tipos de tarefa , script, e . Por default, serverless compute é selecionado como o tipo compute quando o senhor cria um novo Job e adiciona um desses tipos de tarefa compatíveis.

Criar serverless tarefa

Databricks recomenda o uso do site serverless compute para todas as tarefas do site Job. O senhor também pode especificar diferentes tipos de compute para a tarefa em um Job, o que pode ser necessário se um tipo de tarefa não for suportado pelo serverless compute para fluxo de trabalho.

Configurar um Job existente para usar o serverless compute

O senhor pode mudar um Job existente para usar o serverless compute para os tipos de tarefa compatíveis quando editar o Job. Para mudar para serverless compute, o senhor pode:

  • No painel lateral de detalhes doJob , clique em swap em compute, clique em New (Novo), insira ou atualize as configurações e clique em Update (Atualizar).

  • Clique em Abaixo do cursor no menu suspenso e selecione compute menu suspenso e selecione serverless.

Alterar a tarefa para serverless compute

Programar um Notebook usando serverless compute

Além de usar a UI de Jobs para criar e programar um Job usando serverless compute, o senhor pode criar e executar um Job que usa serverless compute diretamente de um Databricks Notebook. Consulte Criar e gerenciar um trabalho agendado em Notebook .

Definir os parâmetros de configuração do Spark

Para automatizar a configuração de Spark em serverless compute, Databricks permite definir apenas parâmetros específicos de configuração de Spark. Para obter a lista de parâmetros permitidos, consulte Parâmetros de configuração compatíveis com o Spark.

O senhor pode definir os parâmetros de configuração do Spark somente no nível da sessão. Para fazer isso, defina-os em um Notebook e adicione o Notebook a uma tarefa incluída no mesmo Job que usa os parâmetros. Consulte Obter e definir as propriedades de configuração do Apache Spark em um Notebook.

Configurar ambientes e dependências do Notebook

Para gerenciar as dependências da biblioteca e a configuração do ambiente para uma tarefa do Notebook, adicione a configuração a uma célula no Notebook. O exemplo a seguir instala a Python biblioteca usando pip install dos arquivos workspace e com um arquivo requirements.txt e define uma variável de sessão spark.sql.session.timeZone:

%pip install -r ./requirements.txt
%pip install simplejson
%pip install /Volumes/my/python.whl
%pip install /Workspace/my/python.whl
%pip install https://some-distro.net/popular.whl
spark.conf.set('spark.sql.session.timeZone', 'Europe/Amsterdam')

Para definir o mesmo ambiente em vários notebooks, o senhor pode usar um único Notebook para configurar o ambiente e, em seguida, usar o comando mágico %run para executar esse Notebook a partir de qualquer Notebook que exija a configuração do ambiente. Consulte Usar %run para importar um Notebook.

Configurar ambientes e dependências para nãoNotebook tarefa

Para outros tipos de tarefa compatíveis, como Python script, Python wheel ou dbt tarefa, um ambiente default inclui a instalação da Python biblioteca. Para ver a lista de bibliotecas instaladas, consulte a seção Installed Python biblioteca nas notas sobre a versão da versão Databricks Runtime na qual se baseia a implantação do seu serverless compute para fluxo de trabalho. Para ver a versão atual do Databricks Runtime usada pelo serverless compute para fluxo de trabalho, consulte serverless compute notas sobre a versão. O senhor também pode instalar o Python biblioteca se uma tarefa exigir uma biblioteca que não esteja instalada. O senhor pode instalar a Python biblioteca a workspace partirUnity Catalog de arquivos, volumes ou repositórios públicos de pacotes. Para adicionar uma biblioteca quando o senhor criar ou editar uma tarefa:

  1. No menu Environment and library (Ambiente e biblioteca ) dropdown, clique em ícone de edição ao lado do ambiente ou clique em + Add new environment (Adicionar novo ambiente). default ambiente ou clique em + Add new environment (Adicionar novo ambiente).

    Editar o ambiente default
  2. Na caixa de diálogo Configurar ambiente, clique em + Adicionar biblioteca.

  3. Selecione o tipo de dependência no menu dropdown em biblioteca.

  4. Na caixa de texto File Path (Caminho do arquivo ), digite o caminho para a biblioteca.

  • Para um Python wheel em um arquivo workspace, o caminho deve ser absoluto e começar com /Workspace/.

  • Para um Python wheel em um volume Unity Catalog, o caminho deve ser /Volumes/<catalog>/<schema>/<volume>/<path>.whl.

  • Para um arquivo requirements.txt, selecione PyPi e digite -r /path/to/requirements.txt.

    Adicionar tarefa biblioteca
  1. Clique em Confirm (Confirmar ) ou + Add library (Adicionar biblioteca ) para adicionar outra biblioteca.

  2. Se estiver adicionando uma tarefa, clique em Create task (Criar tarefa). Se estiver editando uma tarefa, clique em Save task (Salvar tarefa).

Configurar a otimização automática da computação sem servidor para não permitir novas tentativas

serverless compute A otimização automática do fluxo de trabalho otimiza automaticamente o compute usado para executar o trabalho e tenta novamente o trabalho com falha. A otimização automática é ativada pelo site default, e o Databricks recomenda deixá-la ativada para garantir que as cargas de trabalho críticas sejam executadas com êxito pelo menos uma vez. No entanto, se o senhor tiver cargas de trabalho que devem ser executadas no máximo uma vez, por exemplo, trabalhos que não são idempotentes, poderá desativar a otimização automática ao adicionar ou editar uma tarefa:

  1. Ao lado de Retries (Repetições), clique em Add (Adicionar ) (ou ícone de edição se já existir uma política de repetição).

  2. Na caixa de diálogo Retry Policy (Política de repetição ), desmarque a opção Enable serverless auto-optimization (pode incluir tentativas adicionais).

  3. Clique em Confirmar.

  4. Se estiver adicionando uma tarefa, clique em Create task (Criar tarefa). Se estiver editando uma tarefa, clique em Save task (Salvar tarefa).

Monitorar o custo do trabalho que usa o site serverless compute para fluxo de trabalho

O senhor pode monitorar o custo do trabalho que usa o site serverless compute para fluxo de trabalho consultando a tabela do sistema de uso faturável. Essa tabela é atualizada para incluir atributos de usuário e carga de trabalho sobre os custos do serverless. Consulte a referência da tabela do sistema de uso faturável.

Ver detalhes de suas consultas Spark

serverless compute para fluxo de trabalho tem uma nova interface para visualização de informações detalhadas de tempo de execução para suas declarações Spark, como métricas e planos de consulta. Para view consultar percepções para Spark declarações incluídas na execução de seu trabalho em serverless compute:

  1. Clique em fluxo de trabalho Icon fluxo de trabalho na barra lateral.

  2. Na coluna Name (Nome ), clique no nome Job para o qual o senhor deseja view percepções.

  3. Clique na execução específica para a qual o senhor deseja view percepções.

  4. Na seção compute do painel lateral da tarefa execução, clique em Query história.

  5. O senhor é redirecionado para o site Query History, pré-filtrado com base no ID de execução da tarefa em que estava.

Para obter informações sobre como usar o histórico de consultas, consulte Histórico de consultas.

Limitações

Para obter uma lista de serverless compute limitações de fluxo de trabalho, consulte serverless compute limitações no serverless compute notas sobre a versão.