Les extensions DataWorks sont des plug-ins qui interagissent avec OpenAPI et OpenEvent pour appliquer une logique de traitement personnalisée aux opérations utilisateur dans DataWorks, telles que l'interception et le blocage. Par exemple, vous pouvez développer une extension pour contrôler les modifications de tâches et imposer un processus de déploiement personnalisé.
Limites
Seule l'édition Enterprise de DataWorks est prise en charge.
Régions prises en charge : Chine (Pékin), Chine (Hangzhou), Chine (Shanghai), Chine (Zhangjiakou), Chine (Shenzhen), Chine (Chengdu), États-Unis (Silicon Valley), États-Unis (Virginie), Allemagne (Francfort), Japon (Tokyo), Chine (Hong Kong) et Singapour.
Notes
Contrôle d'accès : Seuls les Open Platform Administrators et les Tenant Administrators, ainsi que les comptes Alibaba Cloud ou les utilisateurs RAM disposant de l'autorisation AliyunDataWorksFullAccess, possèdent des droits de lecture et d'écriture sur le backend développeur. Pour plus d'informations, consultez les rubriques Global module permission control et Product and console permission control details: RAM Policy.
Période de validité : Si votre abonnement à l'édition Enterprise de DataWorks expire, toutes les extensions deviennent invalides et ne peuvent plus déclencher de vérifications d'événements. Si une extension est déclenchée pour vérifier un événement mais n'a pas terminé la vérification au moment où l'abonnement expire, la vérification est interrompue et le résultat « Check Passed » est renvoyé.
Limites : Actuellement, seuls certains événements de points d'extension prennent en charge le déploiement d'extensions via Function Compute.
Fonctionnalités du produit
Le module Extensions s'appuie sur les points d'extension fournis par la plateforme ouverte DataWorks. Il fonctionne conjointement avec les modules OpenAPI et OpenEvent pour vous permettre de gérer les opérations dans DataWorks grâce à une logique de traitement personnalisée, telle que le blocage d'opérations spécifiques.
Exemples de scénarios de gestion des opérations avec des extensions :
Gestion des conventions de nommage des tables ou des tâches.
Gestion des tâches de synchronisation de données en double.
Gestion des frais générés par les tâches.
-
Gestion des dépendances entre les tâches.
RemarqueVous pouvez mettre en œuvre d'autres scénarios en consultant les types d'événements répertoriés dans la rubrique Development reference: Event list and message format.
Contrôle de processus personnalisé : Lorsqu'une opération dans DataWorks déclenche un événement de point d'extension enregistré dans une extension, l'opération est mise en pause jusqu'à ce que l'extension renvoie son résultat de traitement.
Par exemple : Dans un espace de travail en mode standard, vous pouvez ajouter une extension qui vérifie une fonction spécifique au processus original de développement et de publication des tâches. Cela transforme le processus de tâche de Development > Submit > Publish en Development > Pre-submission verification > Submit > Pre-publishing check > Publish. Pour un exemple, consultez la rubrique Best practices: (Advanced feature application) Prohibit the use of the MAX_PT function.
Processus de développement
Développez et déployez des extensions via des services auto-hébergés ou Function Compute pour mettre en œuvre un contrôle de processus personnalisé dans DataWorks.
-
Configurez les paramètres requis dans OpenEvent pour pousser les messages d'événement : Choisissez une méthode de déploiement en fonction des événements de point d'extension que votre activité doit recevoir.
Développez et déployez des extensions à l'aide de services auto-hébergés : Cette méthode s'appuie sur EventBridge pour la distribution des messages. Assurez-vous d'avoir spécifié le bus d'événements pour les messages DataWorks et configuré le service de routage pour les messages dans le bus d'événements.
Développez et déployez des extensions à l'aide de Function Compute : DataWorks pousse les messages vers la fonction Function Compute spécifiée par défaut. Aucune configuration de bus d'événements dans OpenEvent n'est requise.
-
Développez et déployez une extension personnalisée : Recevez et analysez les messages d'événement de DataWorks, implémentez une logique personnalisée et renvoyez les résultats à DataWorks.
Develop and deploy extensions: Self-built service method : Utilisez le programme de service vers lequel les messages sont finalement routés dans le bus d'événements pour accepter les messages DataWorks, évaluer la logique des messages et rappeler les résultats de traitement via l'API spécifiée.
Develop and deploy extensions: Function Compute method : Implémentez des interfaces spécifiques de Function Compute pour recevoir les demandes d'extension et renvoyer les résultats de traitement des extensions.
Enregistrez l'extension : Spécifiez les types de messages d'événement que l'extension recevra et traitera.
Testez l'extension : Vérifiez si l'extension répond aux attentes dans un espace de travail de test.
-
Soumettez et publiez l'extension : Après avoir vérifié que l'extension fonctionne comme prévu, soumettez-la pour examen par la plateforme. Une fois approuvée, l'extension est publiée pour utilisation par tous les espaces de travail.
RemarqueLes examens des extensions sont généralement terminés sous
T+3jours ouvrables. Merci de faire preuve de patience.Les messages d'événement DataWorks sont valides pendant trois jours. Si la période de validité est dépassée, les messages d'événement sont considérés comme expirés et ne sont pas traités par une extension.
Événements de point d'extension pris en charge
Le tableau suivant répertorie les événements de point d'extension pris en charge par chaque service DataWorks.
Lors du développement et du déploiement d'extensions, utilisez l'eventcode pour chaque extension point. Pour les codes d'événement, consultez la rubrique Development reference: Event list and message format.
Vous pouvez publier des événements de point d'extension uniquement dans les espaces de travail en mode standard.
Pour connaître l'effet d'interception des points d'extension, consultez les rubriques Application example: Trigger event checks during data development et Application example: Trigger event checks in Operation Center.
|
Champ d'application |
Module système |
Type de point d'extension |
Point d'extension |
OpenAPI pour le rappel des résultats de vérification |
|
Niveau de l'espace de travail |
Événements de modification de fichier
|
Pré-événement pour la suppression de fichier |
Vous pouvez utiliser l'API UpdateIDEEventResult pour rappeler les résultats de traitement des événements à DataWorks. |
|
|
Pré-événement pour la validation de fichier |
||||
|
Pré-événement pour la publication de fichier |
||||
|
Pré-événement pour l'exécution du code |
||||
|
Événements de modification de table |
Pré-événement pour la soumission de table en production |
|||
|
Pré-événement pour la soumission de table en développement |
||||
|
Événements de modification de node |
Activer la tâche |
Vous pouvez utiliser l'API CallbackExtension pour rappeler les résultats de traitement des événements à DataWorks. |
||
|
Tâche batch real-time |
||||
|
Événements de modification de node |
Pré-événement pour la dépublication de node |
Vous pouvez utiliser l'API UpdateWorkbenchEventResult pour rappeler les résultats de traitement des événements à DataWorks. |
||
|
Pré-événement pour le gel de node |
||||
|
Pré-événement pour le dégel de node |
||||
|
Événement d'opération de backfill de données |
Pré-événement pour le backfill de données |
|||
|
Événements de modification d'instance |
Pré-événement pour le gel d'instance |
|||
|
Pré-événement pour le dégel d'instance |
||||
|
Pré-événement pour la terminaison d'instance |
||||
|
Pré-événement pour la réexécution d'instance |
||||
|
Pré-événement pour la définition du statut de l'instance sur succès |
||||
|
Événements du centre d'approbation |
Pré-événement pour la création de demande d'autorisation |
Vous pouvez utiliser l'API CallbackExtension pour rappeler les résultats de traitement des événements à DataWorks. |
||
|
Événements de vérification Data Quality |
Pré-événement pour la création en masse de règles Data Quality |
|||
|
Pré-événement pour la mise à jour en masse de règles Data Quality |
||||
|
Pré-événement pour la mise à jour de règle Data Quality |
||||
|
Pré-événement pour la suppression en masse de règles Data Quality |
||||
|
Pré-événement pour la création de surveillance Data Quality |
||||
|
Pré-événement pour la mise à jour de surveillance Data Quality |
||||
|
Pré-événement pour le clonage de surveillance Data Quality |
||||
|
Pré-événement pour la création d'abonnement aux alertes de surveillance Data Quality |
||||
|
Pré-événement pour la suppression en masse de surveillance Data Quality |
||||
|
Pré-événement pour la mise à jour d'abonnement aux alertes de surveillance Data Quality |
||||
|
Pré-événement pour la suppression d'abonnement aux alertes de surveillance Data Quality |
||||
|
Niveau du locataire |
Événements de modification d'espace de travail |
Pré-événement pour la suppression d'espace de travail |
||
|
Événements de téléchargement de données |
Pré-événement pour le téléchargement de données (génération de fichier) |
|||
|
Pré-événement pour le téléchargement de données (téléchargement de fichier) |
||||
|
Pré-événement pour l'upload de données |
Annexe : Comparaison des deux méthodes de déploiement
|
Service auto-hébergé |
Function Compute |
|
|
Difficulté d'exploitation |
La procédure est complexe, implique le déploiement de serveurs et d'applications, et est sujette à des problèmes réseau et d'O&M. |
La procédure est simple. Vous pouvez développer et déployer une extension avec une seule fonction. |
|
Coût |
- |
Cette méthode engendre des frais Function Compute. Pour plus d'informations, consultez la rubrique Billing overview. |
|
Événements pris en charge |
Cette méthode prend en charge divers événements d'extension. Pour plus d'informations, consultez la rubrique Development reference: Event list and message format. |
La méthode de déploiement basée sur Function Compute prend uniquement en charge les événements de point d'extension suivants : pré-événement pour le téléchargement de données, pré-événement pour l'upload de données, pré-événement pour la publication d'actif et pré-événement pour la dépublication d'actif. |