Tous les produits
Search
Centre de documentation

MaxCompute:Développer une fonction définie par l'utilisateur (UDF) Python

Dernière mise à jour :Aug 10, 2026

MaxCompute Studio vous permet de développer, tester et publier des fonctions définies par l'utilisateur (UDF) Python.

Prérequis

Avant de commencer, effectuez les opérations suivantes :

Développer une UDF Python

  1. Dans le volet Project, sous le répertoire MaxCompute Studio, cliquez avec le bouton droit sur scripts, puis sélectionnez New > MaxCompute Python.

  2. Dans la boîte de dialogue Create new MaxCompute python class, saisissez un nom de classe dans le champ Name, définissez Kind sur Python UDF, puis cliquez sur OK.

  3. Rédigez le code de l'UDF dans l'éditeur.

    from odps.udf import annotate
    @annotate("bigint,bigint->bigint")
    class Hello(object):
        def evaluate(self, arg0, arg1):
            if None in (arg0,arg1):
                return None
            return arg0+arg1

Tester l'UDF

MaxCompute Studio prend en charge les tests locaux. Vous pouvez télécharger des exemples de données depuis une table pour exécuter et déboguer l'UDF localement.

  1. Cliquez avec le bouton droit sur le script UDF Python et sélectionnez RUN.

  2. Sur la page Edit configuration, configurez les paramètres requis et cliquez sur OK.

    • MaxCompute project : Projet MaxCompute dans lequel l'UDF s'exécute. Si vous avez configuré une connexion au projet via Gérer les connexions au projet, ce champ utilise ce projet par défaut. Vous pouvez également ajouter d'autres projets si nécessaire.

    • MaxCompute table : Table source utilisée pour l'exécution de l'UDF. Sélectionnez une table dans la liste déroulante du projet MaxCompute choisi.

    • Table columns : Colonnes utilisées par l'UDF.

    • Download Record limit : Nombre maximal d'enregistrements à télécharger. Valeur par défaut : 100.

    Remarque
    • Si les données ont déjà été téléchargées, MaxCompute Studio ne les télécharge pas de nouveau. Pour les retélécharger, exécutez la commande Tunnel dans le client MaxCompute.

    • Par défaut, 100 enregistrements sont téléchargés. Pour tester avec un volume de données plus important, téléchargez les données via la commande Tunnel dans le client MaxCompute ou via la fonctionnalité de téléchargement de table de MaxCompute Studio.

    • Une fois le téléchargement terminé, les exemples de données sont disponibles dans le fichier data situé sous le répertoire warehouse.

  3. Le framework d'exécution locale récupère les données des colonnes spécifiées dans le fichier data et exécute l'UDF localement.

    Remarque

    Les exécutions locales utilisent le script pyou fourni par PyODPS. La commande est pyou hello.Hello<data. Après avoir installé PyODPS, vérifiez l'existence du script en exécutant la commande suivante :

    • Sous Windows, exécutez la commande ${python}/../Scripts/pyou.

    • Sous macOS, exécutez la commande ${python}/../pyou.

  4. L'exemple suivant présente le code source d'une UDF Python. Une fois le code exécuté, vous pouvez consulter la sortie dans la console.

    from odps.udf import annotate
    @annotate("bigint,bigint->bigint")
    class Plus(object):
        def evaluate(self, arg0, arg1):
            if None in (arg0, arg1):
                return None
            return arg0 + arg1

Publier une UDF Python

Une fois que l'UDF Python a passé les tests avec succès, publiez-la dans un environnement de production. Pour plus d'informations, consultez la rubrique Télécharger et enregistrer une fonction.