O DataWorks Extensions é um plug-in que integra a OpenAPI e o OpenEvent para aplicar lógica de processamento personalizada às operações do usuário no DataWorks, como interceptação e bloqueio. Por exemplo, você pode desenvolver uma extension para controle de alterações de tarefas e impor um processo personalizado de implantação.
Limites
Somente o DataWorks Enterprise Edition é suportado.
Regiões suportadas: China (Beijing), China (Hangzhou), China (Shanghai), China (Zhangjiakou), China (Shenzhen), China (Chengdu), US (Silicon Valley), US (Virginia), Germany (Frankfurt), Japan (Tokyo), China (Hong Kong), Singapore.
Observações
Controle de acesso: Apenas os Open Platform Administrators e Tenant Administrators, contas Alibaba Cloud ou usuários RAM com a permissão AliyunDataWorksFullAccess possuem permissões de leitura e escrita no backend do desenvolvedor. Para mais informações, consulte Global module permission control e Product and console permission control details: RAM Policy.
Período de vigência: Se o seu DataWorks Enterprise Edition expirar, todas as extensions tornar-se-ão inválidas e não poderão mais acionar verificações de eventos. Caso uma extension seja acionada para verificar um evento e não tenha concluído a verificação antes da expiração do DataWorks Enterprise Edition, a verificação será encerrada e o resultado Check Passed será retornado.
Limites: Atualmente, apenas alguns eventos de ponto de extensão suportam a implantação de extensions por meio do Function Compute.
Capacidades do product
O módulo Extensions baseia-se nos pontos de extensão fornecidos pela DataWorks Open Platform. Ele trabalha em conjunto com os módulos OpenAPI e OpenEvent para permitir que você gerencie operações no DataWorks por meio de lógica de processamento personalizada, como o bloqueio de operações específicas.
Cenários de exemplo para gerenciamento de operações com extensions:
Gerenciamento de convenções de nomenclatura de tabelas ou tarefas.
Controle de tarefas duplicadas de sincronização de dados.
Gestão de custos gerados por tarefas.
-
Administração de dependências entre tarefas.
NotaÉ possível implementar outros cenários consultando os tipos de eventos em Development reference: Event list and message format.
Controle de processo personalizado: Quando uma operação no DataWorks aciona um evento de ponto de extensão registrado em uma extension, a operação é pausada até que a extension retorne seu resultado de processamento.
Por exemplo: Em um workspace no modo padrão, você pode adicionar uma extension que verifica uma função específica ao processo original de desenvolvimento e publicação de tarefas. Isso transforma o fluxo de Development > Submit > Publish em Development > Pre-submission verification > Submit > Pre-publishing check > Publish. Para ver um exemplo, consulte Best practices: (Advanced feature application) Prohibit the use of the MAX_PT function.
Processo de desenvolvimento
Desenvolva e implante extensions por meio de serviços próprios ou do Function Compute para implementar controle de processo personalizado no DataWorks.
-
Configure as definições necessárias no OpenEvent para enviar mensagens de eventos: Escolha um método de implantação com base nos eventos de ponto de extensão que sua empresa precisa receber.
Desenvolva e implante extensions usando serviços próprios: Este método depende do EventBridge para distribuição de mensagens. Certifique-se de ter especificado o barramento de eventos para mensagens do DataWorks e configurado o service de roteamento de mensagens nesse barramento.
Desenvolva e implante extensions usando o Function Compute: O DataWorks envia mensagens para a função do Function Compute especificada por padrão. Não é necessária configuração de barramento de eventos no OpenEvent.
-
Desenvolva e implante uma extension personalizada: Receba e analise mensagens de eventos do DataWorks, implemente a lógica personalizada e retorne os resultados ao DataWorks.
Develop and deploy extensions: Self-built service method: Utilize o programa de service para o qual as mensagens são roteadas no barramento de eventos para aceitar mensagens do DataWorks, realizar julgamentos lógicos sobre elas e retornar os resultados de processamento por meio da API especificada.
Develop and deploy extensions: Function Compute method: Implemente interfaces específicas do Function Compute para receber solicitações de extension e retornar os resultados de processamento.
Registre a extension: Especifique quais tipos de mensagens de eventos a extension receberá e processará.
Teste a extension: Verifique se a extension atende às expectativas em um workspace de teste.
-
Envie e publique a extension: Após confirmar que a extension funciona conforme o esperado, envie-a para revisão da plataforma. Depois de aprovada, a extension será publicada para uso em todos os workspaces.
NotaAs revisões de extensions geralmente são concluídas em
T+3dias úteis. Agradecemos a paciência.As mensagens de eventos do DataWorks têm validade de três dias. Se esse período for excedido, as mensagens serão consideradas expiradas e não serão processadas pela extension.
Eventos de ponto de extensão suportados
A tabela a seguir lista os eventos de ponto de extensão suportados por cada service do DataWorks.
Ao desenvolver e implantar extensions, utilize o eventcode correspondente a cada ponto de extensão. Para consultar os códigos de eventos, veja Development reference: Event list and message format.
A publicação de eventos de ponto de extensão ocorre apenas em workspaces no modo padrão.
Para detalhes sobre o efeito de interceptação dos pontos de extensão, consulte Application example: Trigger event checks during data development e Application example: Trigger event checks in Operation Center.
|
Escopo de aplicação |
Módulo do sistema |
Tipo de ponto de extensão |
Ponto de extensão |
OpenAPI para retorno de resultados de verificação |
|
Nível de workspace |
Eventos de alteração de arquivo
|
Pré-evento para exclusão de arquivo |
Utilize a API UpdateIDEEventResult para retornar os resultados do processamento de eventos ao DataWorks. |
|
|
Pré-evento para envio de arquivo |
||||
|
Pré-evento para publicação de arquivo |
||||
|
Pré-evento para execução de código |
||||
|
Eventos de alteração de tabela |
Pré-evento para envio de tabela para produção |
|||
|
Pré-evento para envio de tabela para desenvolvimento |
||||
|
Eventos de alteração de nó |
Ativar tarefa |
Utilize a API CallbackExtension para retornar os resultados do processamento de eventos ao DataWorks. |
||
|
Tarefa em tempo real em lote |
||||
|
Eventos de alteração de nó |
Pré-evento para despublicação de nó |
Utilize a API UpdateWorkbenchEventResult para retornar os resultados do processamento de eventos ao DataWorks. |
||
|
Pré-evento para congelamento de nó |
||||
|
Pré-evento para descongelamento de nó |
||||
|
Evento de operação de backfill de dados |
Pré-evento para backfill de dados |
|||
|
Eventos de alteração de instância |
Pré-evento para congelamento de instância |
|||
|
Pré-evento para descongelamento de instância |
||||
|
Pré-evento para encerramento de instância |
||||
|
Pré-evento para reexecução de instância |
||||
|
Pré-evento para definição de status de instância como sucesso |
||||
|
Eventos do Approval Center |
Pré-evento para criação de solicitação de permissão |
Utilize a API CallbackExtension para retornar os resultados do processamento de eventos ao DataWorks. |
||
|
Eventos de verificação de Data Quality |
Pré-evento para criação em lote de regras de Data Quality |
|||
|
Pré-evento para atualização em lote de regras de Data Quality |
||||
|
Pré-evento para atualização de regra de Data Quality |
||||
|
Pré-evento para exclusão em lote de regras de Data Quality |
||||
|
Pré-evento para criação de monitoramento de Data Quality |
||||
|
Pré-evento para atualização de monitoramento de Data Quality |
||||
|
Pré-evento para clonagem de monitoramento de Data Quality |
||||
|
Pré-evento para criação de assinatura de alerta de monitoramento de Data Quality |
||||
|
Pré-evento para exclusão em lote de monitoramento de Data Quality |
||||
|
Pré-evento para atualização de assinatura de alerta de monitoramento de Data Quality |
||||
|
Pré-evento para exclusão de assinatura de alerta de monitoramento de Data Quality |
||||
|
Nível de tenant |
Eventos de alteração de workspace |
Pré-evento para exclusão de workspace |
||
|
Eventos de download de dados |
Pré-evento para download de dados (geração de arquivo) |
|||
|
Pré-evento para download de dados (download de arquivo) |
||||
|
Pré-evento para upload de dados |
Apêndice: Comparação entre os dois métodos de implantação
|
Serviço próprio |
Function Compute |
|
|
Complexidade operacional |
O procedimento é complexo, envolve implantação de servidor e aplicação, além de estar sujeito a problemas de rede e O&M. |
O procedimento é simples. Desenvolva e implante uma extension com uma única função. |
|
Custo |
- |
Este método gera taxas do Function Compute. Para mais informações, consulte Billing overview. |
|
Eventos suportados |
Suporta diversos eventos de extensão. Para mais detalhes, veja Development reference: Event list and message format. |
A implantação baseada em Function Compute suporta apenas os eventos de ponto de extensão: pré-evento para download de dados, pré-evento para upload de dados, pré-evento para publicação de ativo e pré-evento para despublicação de ativo. |