Tous les produits
Search
Centre de documentation

DataWorks:Nœud Function Compute

Dernière mise à jour :Aug 10, 2026

Le nœud Function Compute de DataWorks vous permet d'exécuter du code personnalisé pour répondre à divers besoins métier. Il prend en charge la planification périodique, ce qui le rend idéal pour les tâches planifiées. Vous pouvez également combiner ce nœud avec d'autres types de nœuds afin de construire des workflows complets de traitement des données. Cette rubrique explique comment créer et utiliser un nœud Function Compute.

Prérequis

  • Function Compute est activé.

    Activez Function Compute avant d'utiliser les nœuds Function Compute dans DataWorks. Une fois l'activation effectuée, familiarisez-vous avec la présentation du produit et ses fonctionnalités pour garantir un développement fluide. Pour plus d'informations, consultez les rubriques Activation de Function Compute et Présentation de Function Compute.

  • Un service permettant d'appeler des fonctions a été créé.

    Le service constitue l'unité de ressource de base dans Function Compute. Vous pouvez gérer les autorisations, configurer les journaux et créer des fonctions au niveau du service. Vous devez donc créer un service avant de développer une fonction. Pour plus d'informations, consultez la rubrique Création d'un service.

  • Une fonction a été créée.

    La fonction représente l'unité de base pour la planification et l'exécution. Elle contient la logique de traitement de votre code. Vous devez écrire le code conformément à l'interface Function Compute et le déployer en tant que fonction. Pour savoir comment créer une fonction, consultez la rubrique Création d'une fonction.

Contexte

Function Compute est un service de calcul entièrement géré et piloté par les événements. Vous n'avez pas besoin d'acheter ni de gérer l'infrastructure sous-jacente, telle que les serveurs. Il vous suffit d'écrire et de télécharger du code ou des images. Function Compute prend en charge les deux types de fonctions suivants :

  • Fonction événementielle : Adaptée aux modèles pilotés par les événements, où une fonction est appelée lors de la survenue d'un événement.

  • Fonction HTTP : Adaptée aux scénarios tels que la création rapide d'applications web.

Vous pouvez configurer le service et la fonction dans un nœud Function Compute, puis déployer le nœud dans l'environnement de production pour une exécution périodique.

Limites

  • Limites fonctionnelles

    DataWorks permet d'appeler uniquement les fonctions événementielles, et non les fonctions HTTP. Vous devez donc utiliser une fonction événementielle pour les tâches que vous souhaitez planifier périodiquement. Pour plus d'informations sur les types de fonctions, consultez la rubrique Types de fonctions.

  • Limites régionales

    La fonctionnalité Function Compute est disponible uniquement dans les espaces de travail situés dans les régions suivantes : Chine (Hangzhou), Chine (Shanghai), Chine (Pékin), Chine (Shenzhen), Chine (Chengdu), Chine (Hong Kong), Singapour, Malaisie (Kuala Lumpur), Indonésie (Jakarta), Allemagne (Francfort), Royaume-Uni (Londres), États-Unis (Silicon Valley) et États-Unis (Virginie).

Remarques importantes

  • Si la liste des services est vide lorsque vous tentez de sélectionner un service, cela peut être dû à l'une des raisons suivantes :

    • Votre compte présente des impayés. Rechargez votre compte et actualisez la page de configuration du nœud.

    • L'utilisateur connecté ne dispose pas des autorisations nécessaires pour récupérer la liste des services. Contactez le propriétaire de votre compte Alibaba Cloud pour accorder à votre utilisateur RAM l'autorisation fc:ListServices, ou attachez la stratégie AliyunFCFullAccess. Une fois les autorisations accordées, actualisez la page de configuration du nœud et réessayez. Pour savoir comment octroyer des autorisations, consultez la rubrique Octroi d'autorisations à un utilisateur RAM.

  • Pour les fonctions exécutées via un nœud Function Compute de DataWorks, si le temps d'exécution dépasse une heure, définissez la méthode d'appel sur appel asynchrone. Pour plus d'informations sur l'appel asynchrone dans Function Compute, consultez la rubrique Appel asynchrone.

  • Si vous utilisez un utilisateur RAM pour développer un nœud Function Compute, accordez-lui les autorisations associées aux stratégies système ou personnalisées suivantes.

    Type de stratégie

    Description

    Stratégie système

    Si vous utilisez une stratégie système, accordez à l'utilisateur les stratégies AliyunFCFullAccess, AliyunFCReadOnlyAccess et AliyunFCInvocationAccess.

    Stratégie personnalisée

    Si vous utilisez une Function Compute stratégie personnalisée, les autorisations suivantes sont généralement accordées :

    • fc:GetAsyncTask

    • fc:StopAsyncTask

    • fc:GetService

    • fc:ListServices

    • fc:GetFunction

    • fc:InvokeFunction

    • fc:ListFunctions

    • fc:GetFunctionAsyncInvokeConfig

    • fc:ListServiceVersions

    • fc:ListAliases

    • fc:GetAlias

    • fc:ListFunctionAsyncInvokeConfigs

    • fc:GetStatefulAsyncInvocation

    • fc:StopStatefulAsyncInvocation

    Remarque

    Pour plus d'informations sur les stratégies d'autorisation de Function Compute, consultez les documents suivants :

Étape 1 : Accéder à la page de création du nœud

  1. Connectez-vous à la console DataWorks. Dans la région cible, cliquez sur Data Development and O&M > Data Development dans le volet de navigation de gauche. Sélectionnez un espace de travail dans la liste déroulante et cliquez sur Go to Data Development.

  2. Accédez à la page de création du nœud.

    Sur la page DataStudio, créez un nœud Function Compute selon l'une des trois méthodes suivantes. Méthode 1 : Dans la barre de menu supérieure, cliquez sur + New > Node > Function Compute. Méthode 2 : Dans l'arborescence des processus métier à gauche, cliquez avec le bouton droit sur le processus métier cible et choisissez New Node > Function Compute. Méthode 3 : Développez le processus métier cible à gauche, cliquez sur General > New Node, puis sélectionnez Function Compute.

Étape 2 : Créer et configurer le nœud

  1. Créez un nœud Function Compute.

    Sur la page de création du nœud, configurez les informations de base du nouveau nœud, telles que le chemin d'accès et le nom, puis créez le nœud.

  2. Configurez les paramètres du nœud Function Compute.

    Sur la page de configuration du nœud, sélectionnez la fonction à appeler et configurez sa méthode d'appel ainsi que ses variables. Le tableau suivant décrit les paramètres.

    Paramètre

    Description

    Select Function

    Sélectionnez la fonction à appeler pour cette tâche. Si aucune fonction n'est disponible, vous devez en créer une. Pour plus d'informations, consultez la rubrique Création d'une fonction.

    Remarque

    DataWorks permet d'appeler uniquement les fonctions événementielles, et non les fonctions HTTP. Vous devez donc utiliser une fonction événementielle pour les tâches que vous souhaitez planifier périodiquement. Pour plus d'informations sur les types de fonctions, consultez la rubrique Types de fonctions.

    Dans cet exemple, la fonction para_service_01_by_time_triggers est sélectionnée. Lors de la création de cette fonction, sélectionnez l'exemple de code pour une timer-triggered function fourni par la plateforme. La logique du code est la suivante.

    import json
        import logging
    
        logger = logging.getLogger()
    
        def handler(event, context):
            logger.info('event: %s', event)
    
            # Parse the json
            evt = json.loads(event)
            triggerName = evt["triggerName"]
            triggerTime = evt["triggerTime"]
            payload = evt["payload"]
    
            logger.info('triggerName: %s', triggerName)
            logger.info("triggerTime: %s", triggerTime)
            logger.info("payload: %s", payload)
    
            return 'Timer Payload: ' + payload

    Pour plus d'exemples de code pour les fonctions, consultez la rubrique Exemple de code.

    Select Version or Alias

    Sélectionnez la version du service ou l'alias. La version par défaut est LATEST.

    • Version du service

      Function Compute propose une fonctionnalité de gestion des versions au niveau du service, qui vous permet de publier une ou plusieurs versions de votre service. Lorsque vous publiez une version, Function Compute crée un instantané du service, incluant sa configuration, le code de la fonction et les configurations de la fonction. Les déclencheurs ne sont pas inclus. Function Compute attribue ensuite automatiquement un numéro de version à l'instantané pour une utilisation future. Pour plus d'informations, consultez la rubrique Publication d'une version.

    • Alias de version

      Function Compute vous permet de créer un alias pour une version de service. Un alias pointe vers une version spécifique, ce qui facilite les opérations telles que la publication, les retours arrière et les déploiements canaris. Un alias ne peut pas exister indépendamment d'un service ou d'une version. Lorsque vous utilisez un alias pour accéder à un service ou à une fonction, Function Compute résout l'alias vers la version correspondante. L'appelant n'a pas besoin de connaître la version spécifique. Pour plus d'informations, consultez la rubrique Création d'un alias.

    Invocation Method

    Les méthodes d'appel suivantes sont prises en charge :

    • Appel synchrone : L'événement déclenche directement la fonction. Function Compute exécute la fonction et attend une réponse. Une fois la fonction appelée, Function Compute renvoie le résultat d'exécution.

    • Appel asynchrone : Function Compute met en file d'attente la demande d'événement et renvoie une réponse immédiatement, sans attendre la fin de la demande.

      • Si une fonction est longue, consomme beaucoup de ressources ou contient une logique sujette aux erreurs, utilisez l'appel asynchrone pour améliorer la vitesse de réponse et gérer de manière fiable les pics de trafic.

      • Pour les tâches Function Compute dont la durée d'exécution dépasse une heure, utilisez l'appel asynchrone.

    Variable

    Attribuez des valeurs aux variables de la fonction. Ces variables correspondent à la charge utile de l'événement définie dans la section Test Function > Configure Test Event de la console Function Compute.

    Cet exemple transmet les paramètres suivants aux variables de la fonction para_service_01_by_time_triggers. Dans les paramètres, le format ${} est utilisé pour définir une variable nommée bizdate. Vous devez attribuer une valeur à cette variable à l'étape 4.

    {
            "payload": "payload1",
            "triggerTime": "${bizdate}",
            "triggerName": "triggerName1"
        }
  3. Facultatif. Déboguez et exécutez le nœud Function Compute.

    Après avoir configuré le nœud, cliquez sur l'icône 运行. Spécifiez un groupe de ressources pour la tâche et attribuez des valeurs constantes aux variables du code afin d'exécuter un test de débogage et de vérifier la logique du nœud. Lors de l'exécution du test, utilisez le format key=value. Séparez les différents paramètres par des virgules (,).

    Remarque

    Pour savoir comment déboguer une tâche, consultez la rubrique Débogage d'une tâche.

  4. Configurez les propriétés de planification du nœud.

    DataWorks utilise des paramètres de planification pour transmettre des valeurs dynamiques aux tâches planifiées. Après avoir défini une variable telle que ${bizdate} dans la configuration du nœud, vous devez lui attribuer une valeur dans les propriétés de planification. Cet exemple attribue la date de la veille à la variable bizdate. Cela signifie que DataWorks planifie l'exécution du nœud un jour avant l'heure d'exécution configurée. Pour savoir comment configurer les paramètres de planification, consultez la rubrique Configuration des paramètres de planification. Cliquez sur l'onglet scheduling properties dans le volet de droite. Dans la section scheduling parameters, ajoutez manuellement un paramètre. Définissez le nom du paramètre sur bizdate et la valeur sur $[yyyymmdd-1]. Dans la section Variable de l'éditeur de code à gauche, référencez ce paramètre de planification en utilisant ${bizdate}. Par exemple, définissez la valeur du champ triggerTime sur ${bizdate}. Sélectionnez LATEST pour la version de la fonction et Synchronous pour la méthode d'appel. Pour plus d'informations sur les propriétés de planification d'un nœud, consultez la rubrique Configuration des propriétés de base d'une tâche.

Étape 3 : Valider et déployer le nœud

Pour exécuter un nœud Function Compute selon une planification automatique, vous devez d'abord le valider et le déployer dans l'environnement de production.

  1. Enregistrez et validez le nœud.

    Cliquez sur les icônes 保存 et 提交 dans la barre d'outils pour enregistrer et valider le nœud. Dans la boîte de dialogue de validation, saisissez une description des modifications et, si nécessaire, sélectionnez les options pour la revue de code et les tests de fumée.

    Remarque
    • Vous devez configurer la propriété Rerun attribute et les Parent Nodes dans les propriétés de planification avant de pouvoir valider le nœud.

    • Si la revue de code est activée, le code d'un nœud validé doit être approuvé par un relecteur avant que le nœud ne puisse être déployé. Pour plus d'informations, consultez la rubrique Revue de code.

    • Afin de garantir que le nœud planifié s'exécute comme prévu, nous vous recommandons d'effectuer des tests de fumée sur la tâche avant de la déployer. Pour plus d'informations, consultez la rubrique Tests de fumée.

  2. Facultatif. Déployez le nœud.

    Si vous utilisez un espace de travail en mode standard, vous devez cliquer sur Deploy dans le coin supérieur droit pour déployer le nœud après l'avoir validé. Pour plus d'informations, consultez les rubriques Espaces de travail en mode standard et Déploiement de tâches.

Étapes suivantes

  • Une fois qu'une tâche est validée et déployée, elle est planifiée par Operation Center. Vous pouvez ensuite gérer et surveiller la tâche dans le centre d'opérations DataWorks (Operation Center). Pour plus d'informations, consultez la rubrique Operation Center.

  • Une fois que vous maîtrisez les étapes de base pour créer et utiliser un nœud Function Compute, vous pouvez explorer les bonnes pratiques pour approfondir votre compréhension du nœud. Pour plus d'informations, consultez la rubrique Ajout dynamique de filigranes aux PDF à l'aide d'un nœud Function Compute dans DataWorks.