Acionar o Job quando novos arquivos chegarem
O senhor pode usar gatilhos de chegada de arquivos para acionar a execução do seu trabalho Databricks quando novos arquivos chegarem a um local externo, como Amazon S3, Azure storage ou Google Cloud Storage. O senhor pode usar esse recurso quando um trabalho agendado pode ser ineficiente porque novos dados chegam em uma programação irregular.
Os acionadores de chegada de arquivos se esforçam ao máximo para verificar se há novos arquivos a cada minuto, embora isso possa ser afetado pelo desempenho do armazenamento cloud subjacente. Os acionadores de chegada de arquivos não incorrem em custos adicionais além dos custos do provedor cloud associados à listagem de arquivos no local de armazenamento.
Um acionador de chegada de arquivo pode ser configurado para monitorar a raiz de um local ou volume externo do Unity Catalog ou um subcaminho de um local ou volume externo. Por exemplo, para o volume raiz /Volumes/mycatalog/myschema/myvolume/
do Unity Catalog, os caminhos a seguir são válidos para um acionador de chegada de arquivo:
/Volumes/mycatalog/myschema/myvolume/
/Volumes/mycatalog/myschema/myvolume/mydirectory/
Um gatilho de chegada de arquivo verifica recursivamente novos arquivos em todos os subdiretórios do local configurado. Por exemplo, se você criar um gatilho de chegada de arquivo para o local /Volumes/mycatalog/myschema/myvolume/mydirectory/
e esse local tiver os seguintes subdiretórios:
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirA
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirB
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirC/subdirD
O acionador verifica se há novos arquivos em mydirectory
, subdirA
, subdirB
, subdirC
e subdirC/subdirD
.
Requisitos
Os seguintes itens são necessários para usar os acionadores de chegada de arquivos:
O site workspace deve ter o Unity Catalog ativado.
O senhor deve usar um local de armazenamento que seja um volume do Unity Catalog ou um local externo adicionado ao metastore do Unity Catalog. Consulte Criar um local externo para conectar o armazenamento cloud a Databricks.
O senhor deve ter
READ
permissões para o local de armazenamento e CAN MANAGE permissões no Job. Para obter mais informações sobre permissões de trabalho, consulte Job ACLs.
Limitações
Somente novos arquivos acionam a execução. A substituição de um arquivo existente por um arquivo com o mesmo nome não aciona uma execução.
Um máximo de cinquenta trabalhos podem ser configurados com um acionador de chegada de arquivo em um Databricks workspace.
Um local de armazenamento configurado para um acionador de chegada de arquivos pode conter apenas até 10.000 arquivos. Os locais com mais arquivos não podem ser monitorados quanto à chegada de novos arquivos. Se o local de armazenamento configurado for um subcaminho de um local ou volume externo do Unity Catalog, o limite de 10.000 arquivos se aplicará ao subcaminho e não à raiz do local de armazenamento. Por exemplo, a raiz do local de armazenamento pode conter mais de 10.000 arquivos em seus subdiretórios, mas o subdiretório configurado não pode exceder o limite de 10.000 arquivos.
O caminho usado para um acionador de chegada de arquivo não deve conter nenhuma tabela externa ou localizações gerenciais de catálogos e esquemas.
O caminho usado para um acionador de chegada de arquivo não pode conter curingas, por exemplo,
*
ou?
.
Adicionar um acionador de chegada de arquivo
Para adicionar um acionador de chegada de arquivo a um trabalho:
Na barra lateral, clique em fluxo de trabalho.
Na coluna Name (Nome ) em Jobs tab, clique no nome do Job.
No painel de detalhes doJob, à direita, clique em Add trigger (Adicionar acionador).
Em Trigger type (Tipo de acionador), selecione File arrival (Chegada de arquivo).
Em Storage location (Local de armazenamento), digite a URL da raiz ou um subcaminho de um local externo do Unity Catalog ou a raiz ou um subcaminho de um volume do Unity Catalog a ser monitorado.
(Opcional) Configure as opções avançadas:
Tempo mínimo entre acionamentos em segundos: O tempo mínimo de espera para acionar uma execução após a conclusão de uma execução anterior. Os arquivos que chegam nesse período acionam uma execução somente após o término do tempo de espera. Use essa configuração para controlar a frequência da criação de execuções.
Aguardar após a última alteração em segundos: O tempo de espera para acionar uma execução após a chegada do arquivo. A chegada de outro arquivo nesse período reinicia o cronômetro. Essa configuração pode ser usada quando os arquivos chegam em lotes e o lote inteiro precisa ser processado depois que todos os arquivos tiverem chegado.
Para validar a configuração, clique em Testar conexão.
Clique em Salvar.
Receber notificações de acionadores de chegada de arquivos com falha
Para ser notificado se um acionador de chegada de arquivo falhar na avaliação, configure email ou notificações de destino do sistema sobre falha de trabalho. Consulte Adicionar email e notificações do sistema para eventos de trabalho.