DataWorks Extensions es un complemento que funciona junto con OpenAPI y OpenEvent para aplicar lógica de procesamiento personalizada a las operaciones de los usuarios en DataWorks, como la intercepción y el bloqueo. Por ejemplo, puede desarrollar una extensión para el control de cambios de tareas y así aplicar un proceso de despliegue de tareas personalizado.
Límites
Solo se admite DataWorks Enterprise Edition.
Regiones compatibles: 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.
Notas
Control de acceso: Solo los Open Platform Administrators y los Tenant Administrators, es decir, la cuenta de Alibaba Cloud o los usuarios de RAM con el permiso AliyunDataWorksFullAccess, tienen permisos de lectura y escritura en el backend del desarrollador. Para obtener más información, consulte Global module permission control y Product and console permission control details: RAM Policy.
Periodo de vigencia: Si su suscripción de DataWorks Enterprise Edition caduca, todas las extensiones dejan de ser válidas y ya no pueden activar comprobaciones de eventos. Si una extensión se activa para comprobar un evento y no termina la comprobación antes de que caduque DataWorks Enterprise Edition, el proceso se detiene y se devuelve el resultado Check Passed.
Límites: Actualmente, solo algunos eventos de punto de extensión admiten el despliegue de extensiones mediante Function Compute.
Capacidades del producto
El módulo Extensions se basa en los puntos de extensión que proporciona la plataforma abierta de DataWorks. Funciona junto con los módulos OpenAPI y OpenEvent para permitirle gestionar las operaciones en DataWorks mediante lógica de procesamiento personalizada, como el bloqueo de operaciones específicas.
A continuación se muestran ejemplos de escenarios de gestión de operaciones con extensiones:
Gestión de convenciones de nombres para tablas o tareas.
Gestión de tareas duplicadas de sincronización de datos.
Gestión de los costos generados por las tareas.
-
Gestión de dependencias entre tareas.
NotaPuede implementar más escenarios si consulta los tipos de eventos en Development reference: Event list and message format.
Control de procesos personalizado: cuando una operación en DataWorks activa un evento de punto de extensión registrado en una extensión, la operación se pausa hasta que la extensión devuelva su resultado de procesamiento.
Por ejemplo: en un espacio de trabajo en modo estándar, puede agregar una extensión que compruebe una función específica al proceso original de desarrollo y publicación de tareas. Esto transforma el flujo de Development > Submit > Publish a Development > Pre-submission verification > Submit > Pre-publishing check > Publish. Para ver un ejemplo, consulte Best practices: (Advanced feature application) Prohibit the use of the MAX_PT function.
Proceso de desarrollo
Puede desarrollar y desplegar extensiones mediante servicios propios o Function Compute para implementar el control de procesos personalizado en DataWorks.
-
Configure los ajustes obligatorios en OpenEvent para enviar mensajes de eventos: elija un método de despliegue según los eventos de punto de extensión que su negocio necesite recibir.
Desarrolle y despliegue extensiones con servicios propios: este método depende de EventBridge para distribuir los mensajes. Compruebe que haya especificado el bus de eventos para los mensajes de DataWorks y configurado el servicio de enrutamiento de mensajes en dicho bus.
Desarrolle y despliegue extensiones con Function Compute: DataWorks envía los mensajes de forma predeterminada a la función de Function Compute especificada. No se requiere ninguna configuración de bus de eventos en OpenEvent.
-
Desarrolle y despliegue una extensión personalizada: reciba y analice sintácticamente los mensajes de eventos de DataWorks, implemente la lógica personalizada y devuelva los resultados a DataWorks.
Develop and deploy extensions: Self-built service method: utilice el programa de servicio al que finalmente se enrutan los mensajes en el bus de eventos para aceptar los mensajes de DataWorks, evaluarlos lógicamente y devolver los resultados de procesamiento mediante la API especificada.
Develop and deploy extensions: Function Compute method: implemente interfaces específicas de Function Compute para recibir las solicitudes de la extensión y devolver los resultados de procesamiento.
Registre la extensión: especifique qué tipos de mensajes de eventos recibirá y procesará la extensión.
Pruebe la extensión: compruebe si la extensión cumple con lo esperado en un espacio de trabajo de prueba.
-
Envíe y publique la extensión: después de comprobar que la extensión funciona correctamente, envíela para la revisión de la plataforma. Una vez aprobada, se publica para que todos los espacios de trabajo la utilicen.
NotaLas revisiones de extensiones suelen completarse en
T+3días hábiles. Le pedimos paciencia.Los mensajes de eventos de DataWorks tienen una validez de tres días. Si se supera este periodo, los mensajes se consideran caducados y la extensión no los procesa.
Eventos de punto de extensión compatibles
A continuación se muestra una tabla con los eventos de punto de extensión que admite cada servicio de DataWorks.
Al desarrollar y desplegar extensiones, debe usar el eventcode de cada extension point. Para consultar los códigos de eventos, consulte Development reference: Event list and message format.
Los eventos de punto de extensión solo se pueden publicar en espacios de trabajo en modo estándar.
Para conocer el efecto de intercepción de los puntos de extensión, consulte Application example: Trigger event checks during data development y Application example: Trigger event checks in Operation Center.
|
Ámbito de aplicación |
Módulo del sistema |
Tipo de punto de extensión |
Punto de extensión |
OpenAPI para devolver los resultados de comprobación |
|
Nivel de espacio de trabajo |
Eventos de cambio de archivo
|
Evento previo a la eliminación de archivos |
Puede usar la API UpdateIDEEventResult para devolver los resultados de procesamiento de eventos a DataWorks. |
|
|
Evento previo a la confirmación de archivos |
||||
|
Evento previo a la publicación de archivos |
||||
|
Evento previo a la ejecución de código |
||||
|
Eventos de cambio de tabla |
Evento previo al envío de tablas a producción |
|||
|
Evento previo al envío de tablas a desarrollo |
||||
|
Eventos de cambio de nodo |
Enable task |
Puede usar la API CallbackExtension para devolver los resultados de procesamiento de eventos a DataWorks. |
||
|
Batch real-time task |
||||
|
Eventos de cambio de nodo |
Evento previo a la anulación de publicación de nodos |
Puede usar la API UpdateWorkbenchEventResult para devolver los resultados de procesamiento de eventos a DataWorks. |
||
|
Evento previo a la congelación de nodos |
||||
|
Evento previo a la descongelación de nodos |
||||
|
Evento de operación de retroalimentación de datos |
Evento previo a la retroalimentación de datos |
|||
|
Eventos de cambio de instancia |
Evento previo a la congelación de instancias |
|||
|
Evento previo a la descongelación de instancias |
||||
|
Evento previo a la finalización de instancias |
||||
|
Evento previo a la reejecución de instancias |
||||
|
Evento previo al cambio del estado de la instancia a exitoso |
||||
|
Eventos de Approval Center |
Evento previo a la creación de solicitudes de permiso |
Puede usar la API CallbackExtension para devolver los resultados de procesamiento de eventos a DataWorks. |
||
|
Eventos de comprobación de Data Quality |
Evento previo a la creación masiva de reglas de Data Quality |
|||
|
Evento previo a la actualización masiva de reglas de Data Quality |
||||
|
Evento previo a la actualización de reglas de Data Quality |
||||
|
Evento previo a la eliminación masiva de reglas de Data Quality |
||||
|
Evento previo a la creación de monitoreos de Data Quality |
||||
|
Evento previo a la actualización de monitoreos de Data Quality |
||||
|
Evento previo a la clonación de monitoreos de Data Quality |
||||
|
Evento previo a la creación de suscripciones de alertas de monitoreo de Data Quality |
||||
|
Evento previo a la eliminación masiva de monitoreos de Data Quality |
||||
|
Evento previo a la actualización de suscripciones de alertas de monitoreo de Data Quality |
||||
|
Evento previo a la eliminación de suscripciones de alertas de monitoreo de Data Quality |
||||
|
Nivel de inquilino |
Eventos de cambio de espacio de trabajo |
Evento previo a la eliminación de espacios de trabajo |
||
|
Eventos de descarga de datos |
Evento previo a la descarga de datos (generación de archivo) |
|||
|
Evento previo a la descarga de datos (descarga de archivo) |
||||
|
Evento previo a la carga de datos |
Apéndice: comparación de los dos métodos de despliegue
|
Servicio propio |
Function Compute |
|
|
Dificultad de operación |
El procedimiento es complejo, implica el despliegue de servidores y aplicaciones, y tiende a generar problemas de red y de operaciones y mantenimiento. |
El procedimiento es sencillo. Puede desarrollar y desplegar una extensión con una sola función. |
|
Costo |
- |
Este método genera cargos de Function Compute. Para obtener más información, consulte Billing overview. |
|
Eventos compatibles |
Este método admite diversos eventos de extensión. Para obtener más información, consulte Development reference: Event list and message format. |
El método de despliegue basado en Function Compute solo admite los eventos de punto de extensión correspondientes al evento previo a la descarga de datos, al evento previo a la carga de datos, al evento previo a la publicación de activos y al evento previo a la anulación de publicación de activos. |