Tous les produits
Search
Centre de documentation

DataWorks:Ressources et fonctions MaxCompute

Dernière mise à jour :Aug 20, 2026

DataStudio vous permet de gérer les ressources de vos projets MaxCompute. Importez un fichier depuis votre machine locale ou Object Storage Service (OSS) pour créer une ressource, puis enregistrez-la en tant que fonction afin de l'utiliser dans les nœuds de développement de données. Cette rubrique explique comment créer et gérer différents types de ressources et de fonctions MaxCompute.

Prérequis

  • Vous avez lié une ressource de calcul MaxCompute.

  • Préparez les fichiers de ressources requis. Vous pouvez les importer depuis votre machine locale ou les récupérer depuis OSS. Si vous importez des fichiers depuis OSS pour créer des ressources, les conditions suivantes doivent être remplies :

    • Activez OSS, créez un bucket et stockez-y les fichiers de ressources requis. Pour plus d'informations, consultez les rubriques Créer un bucket et Importation simple.

      Remarque

      Pour obtenir la liste des fichiers de ressources pris en charge, consultez la section Description des ressources.

    • Le compte Alibaba Cloud utilisé pour l'importation doit disposer des autorisations nécessaires pour accéder au bucket cible. Afin d'éviter les erreurs d'autorisation, accordez les autorisations requises au compte avant d'importer les fichiers.

Accéder à la gestion des ressources

  1. Accédez à la page Workspaces dans la console DataWorks. Dans la barre de navigation supérieure, sélectionnez la région souhaitée. Repérez l'espace de travail cible et choisissez Shortcuts > Data Studio dans la colonne Actions.

  2. Dans le volet de navigation de gauche, cliquez sur l'icône Gestion des ressources image pour accéder à la page Resource Management.

  3. Sur la page Resource Management, cliquez sur l'icône image pour créer une ressource ou une fonction. Vous pouvez également commencer par créer un répertoire pour organiser vos ressources en cliquant sur Create Directory. Ensuite, faites un clic droit sur le répertoire cible, sélectionnez Create, puis choisissez le type de ressource ou de fonction à créer.

Créer et gérer des ressources

Présentation des ressources

Les Ressources constituent la base de l'implémentation des fonctionnalités UDF ou MapReduce dans MaxCompute. Dans DataStudio, utilisez l'interface visuelle pour importer des ressources stockées sur votre machine locale ou dans OSS. MaxCompute lit et utilise ces ressources lors de l'exécution de fonctions définies par l'utilisateur (UDF) et de tâches MapReduce. Les types de ressources MaxCompute suivants sont pris en charge.

Important

L'importation de ressources vers MaxCompute via DataWorks entraîne des frais de stockage MaxCompute.

Type

Description

Python

Script Python utilisé pour enregistrer une UDF Python. L'extension du fichier doit être .py.

JAR

Package Java Archive (JAR) compilé utilisé pour exécuter un programme Java. L'extension du fichier doit être .jar.

Archive

Fichier compressé. Les formats pris en charge incluent .zip, .tgz, .tar.gz, .tar et .jar. Le type de compression est identifié par l'extension du nom de la ressource.

File

Lorsque vous créez une ressource de type File, vous pouvez importer n'importe quel fichier. Les fichiers réellement pris en charge dépendent du moteur spécifique.

Limites

Les limites suivantes s'appliquent lors de l'importation de ressources :

  • Taille de la ressource :

    • Édition en ligne : la taille maximale est de 10 Mo pour une ressource Python et de 500 Ko pour une ressource File.

    • Importation depuis un fichier local : la taille maximale pour une seule ressource est de 500 Mo.

    • Importation depuis un fichier OSS : la taille maximale pour une seule ressource est de 500 Mo.

  • Publication de la ressource : Si vous utilisez un espace de travail en mode standard, publiez la ressource dans l'environnement de production avant de pouvoir l'utiliser.

    Remarque

    La configuration de la source de données peut différer entre l'environnement de développement et l'environnement de production. Avant d'interroger des tables ou d'utiliser des ressources, vérifiez la configuration de la source de données pour l'environnement actuel.

  • Gestion des ressources : Dans DataWorks, vous ne pouvez afficher et gérer que les ressources importées via l'interface utilisateur de DataWorks.

Créer une ressource

Importez des ressources MaxCompute depuis votre machine locale ou depuis OSS. Après avoir créé une ressource, référencez-la directement dans le développement de données ou créez une fonction à partir de celle-ci.

  1. Sur la page Resource Management, créez une ressource, ce qui ouvre la boîte de dialogue Create Resource and Function. Configurez le Type de la ressource, le Path de stockage et le Name de la ressource.

  2. Importez un fichier local ou OSS comme source. Le tableau suivant décrit les paramètres clés.

    Paramètre

    Description

    File Source

    Source du fichier cible. Les options incluent Local et OSS.

    File Content

    • Si vous sélectionnez Local, cliquez sur Click Upload dans la section Document Content pour importer un fichier local.

    • Si vous sélectionnez OSS, sélectionnez le fichier OSS cible dans la liste déroulante Document Content.

    Data Source

    Sélectionnez la source de données à laquelle appartient la ressource MaxCompute.

  3. Dans la barre d'outils supérieure, Save puis Publish la ressource. Seules les ressources publiées peuvent être utilisées dans le développement de données.

Utiliser des ressources

Après avoir créé une ressource, référencez-la lors de l'édition d'un nœud de développement de données. Dans le volet de navigation de gauche, cliquez sur Resource Management. Repérez la ressource ou la fonction cible, faites un clic droit dessus et sélectionnez Insert Resource Path. Cela ajoute une instruction de référence au format ##@resource_reference{"ResourceName"} au nœud.

Remarque

Par exemple, un nœud PyODPS 3 affiche la référence sous la forme ##@resource_reference{"example.py"}. Le format de la référence varie selon le type de nœud. L'affichage réel fait foi.

Outre l'utilisation directe d'une ressource, vous pouvez également créer une fonction à partir de la ressource, puis utiliser cette fonction dans vos nœuds de développement.

Gérer des ressources

Dans DataWorks, vous ne pouvez afficher et gérer que les ressources importées via l'interface utilisateur de DataWorks. Sur la page Resource Management, cliquez sur une ressource pour effectuer des opérations de gestion.

  • Afficher les versions historiques : Affichez et comparez les versions publiées d'une ressource pour suivre les modifications entre les versions.

    Remarque

    Pour comparer les versions, vous devez sélectionner au moins deux versions.

  • Supprimer une ressource : Cette opération supprime la ressource uniquement de l'environnement de développement. Pour supprimer la ressource de l'environnement de production, publiez la tâche de suppression. Une fois la tâche publiée, la ressource est supprimée de l'environnement de production. Pour plus d'informations, consultez la rubrique Publier une tâche.

  • Afficher d'autres ressources.

    MaxCompute peut contenir des ressources importées par des méthodes autres que DataWorks. Vous pouvez afficher ces ressources de la manière suivante :

    • Utilisez le catalogue de données pour afficher toutes les ressources d'un projet MaxCompute.

      Après avoir ajouté un projet MaxCompute au catalogue de données, parcourez le dossier du projet dans le catalogue et affichez toutes ses ressources dans le répertoire des ressources.

    • Utilisez un nœud MaxCompute SQL pour afficher d'autres ressources dans le projet MaxCompute.

      • Pour afficher toutes les ressources du projet actuel, exécutez la commande suivante dans un nouveau script MaxCompute SQL. Par défaut, la commande accède à la ressource de calcul MaxCompute liée à l'environnement de développement.

        list resources;
      • Pour afficher toutes les ressources d'un projet spécifique, exécutez les commandes suivantes :

        use <maxcompute_project_name>;
        list resources;

      Pour plus d'informations sur les commandes de ressources, consultez la rubrique Opérations sur les ressources.

Créer et gérer des fonctions

Avant de créer une fonction, assurez-vous d'avoir créé une ressource.

Remarque

Lors de la préparation d'un fichier de ressource MaxCompute, consultez les rubriques Développement UDF (Java) et Développement UDF (Python 3).

Présentation des fonctions

Dans DataStudio, utilisez la gestion des ressources et des fonctions pour enregistrer des ressources en tant que fonctions. Lors du développement de données ou des requêtes SQL, utilisez l'option Créer une fonction pour convertir des ressources importées et publiées en fonctions, créez des fonctions intégrées en utilisant JAVA, PYTHON2 ou PYTHON3, ou utilisez directement les fonctions intégrées MaxCompute.

Créer une fonction

  1. Sur la page Resource Management, créez une fonction, ce qui ouvre la boîte de dialogue Create Resource and Function. Configurez le Type de la fonction, le Path de stockage et le Name de la fonction.

  2. Configurez les paramètres de la fonction.

    Avant de configurer une fonction MaxCompute, assurez-vous que le projet MaxCompute est enregistré en tant que ressource de calcul dans DataWorks et que les ressources MaxCompute requises ont été importées. Le tableau suivant décrit les paramètres clés d'une fonction MaxCompute.

    Paramètre

    Description

    Function type

    Type de la fonction. Les valeurs valides incluent MATH (mathématique), AGGREGATE (agrégat), STRING (chaîne), DATE (date), ANALYTIC (fenêtrage) et OTHER.

    Class Name

    Nom de classe de l'UDF, au format resource_name.class_name. Le nom de la ressource peut être un nom de package Java ou un nom de ressource Python.

    DataWorks prend en charge la création d'UDF à partir de ressources JAR et Python. Le format du nom de classe varie selon le type de ressource :

    • Si la ressource est un fichier JAR, le format du paramètre Class Name est JavaPackageName.ActualClassName. Vous pouvez obtenir cette valeur depuis IntelliJ IDEA en utilisant l'action Copy Reference.

      Par exemple, si le nom du package Java est com.aliyun.odps.examples.udf et que le nom de classe réel est UDAFExample, définissez le paramètre Class Name sur com.aliyun.odps.examples.udf.UDAFExample.

    • Si la ressource est un fichier Python, le format du paramètre Class Name est PythonResourceName.ActualClassName.

      Par exemple, si le nom de la ressource Python est LcLognormDist_sh et que le nom de classe réel est LcLognormDist_sh, définissez le paramètre Class Name sur LcLognormDist_sh.LcLognormDist_sh.

    Remarque
    • N'incluez pas l'extension de fichier .jar ou .py dans le nom de la ressource.

    • Soumettez et publiez la ressource avant de pouvoir l'utiliser.

    Type

    Sélectionnez Resource function ou Embedded function :

    • Si vous sélectionnez Resource function, configurez uniquement la Resource List.

    • Si vous sélectionnez Embedded Function, spécifiez également le Language (JAVA, PYTHON2 et PYTHON3 sont pris en charge) et fournissez le Code en plus de la Resource List.

    Resource List

    Sélectionnez les ressources requises pour enregistrer la fonction.

    • Mode visuel : Sélectionnez uniquement parmi les ressources déjà importées ou créées dans DataWorks.

    • Mode script : Saisissez n'importe quelle ressource existant dans la source de données. Si l'UDF utilise plusieurs ressources, séparez les noms des ressources par une virgule (,).

    Remarque
    • Il n'est pas nécessaire de saisir le chemin complet pour les ressources ajoutées.

    • Utilisez le mode script pour spécifier manuellement des ressources qui ne peuvent pas être importées via l'interface visuelle, telles que les ressources de table ou celles gérées en dehors de DataWorks.

    Command Format

    Exemple d'utilisation de l'UDF.

  3. Dans la barre d'outils supérieure, Save puis Publish la fonction. Seule une fonction publiée peut être utilisée dans le développement de données.

Utiliser des fonctions

Utiliser des fonctions définies par l'utilisateur

Après avoir créé et publié une fonction, référencez-la directement dans le développement de données ou dans une requête SQL.

  • Lors de l'édition d'un nœud de développement de données, cliquez sur Resource Management dans le volet de navigation de gauche. Repérez la fonction cible, faites un clic droit dessus et sélectionnez Insert Function.

    Le nom de la fonction, tel que example_function(), est automatiquement inséré dans l'éditeur.

  • Lors de l'édition d'une requête SQL, utilisez directement la fonction créée dans votre instruction SQL.

SELECT example_function(column_name) FROM table;

Utiliser des fonctions intégrées

DataWorks prend en charge deux types de fonctions : les fonctions définies par l'utilisateur et les fonctions intégrées MaxCompute. Vous pouvez afficher les fonctions intégrées par catégorie ou par ordre alphabétique.

Gérer des fonctions

Sur la page Resource Management, cliquez sur une fonction pour effectuer des opérations de gestion.

  • Afficher les versions historiques : Dans l'éditeur de fonction, cliquez sur l'icône des versions située à droite. Affichez et comparez les versions enregistrées ou soumises d'une fonction pour suivre les modifications.

    Remarque

    Pour comparer les versions, vous devez sélectionner au moins deux versions.

  • Supprimer une fonction : Faites un clic droit sur la fonction cible et sélectionnez Delete.

    Pour supprimer la fonction de l'environnement de production, publiez la suppression. La fonction est supprimée de l'environnement de production une fois la publication terminée. Pour plus d'informations, consultez la rubrique Publier une tâche.

Afficher les fonctions définies par l'utilisateur

// View the functions in the MaxCompute project that is bound to the DataWorks workspace.
SHOW FUNCTIONS;

Afficher les détails d'une fonction définie par l'utilisateur

  • Utilisez la commande DESCRIBE ou son abréviation DESC, suivie du nom de la fonction, pour afficher les détails d'une UDF.

    // Use the abbreviated form to view the details of a user-defined function.
    DESC FUNCTION <function_name>;
  • Si les fonctions existantes dans DataWorks ne répondent pas à vos besoins métier, créez une UDF MaxCompute. Ensuite, importez et associez des ressources, telles que des packages JAR ou des fichiers Python, pour étendre vos capacités de traitement des données.

FAQ

Q : J'ai importé une ressource via DataWorks et je l'ai définie comme une UDF. Puis-je utiliser cette UDF dans les requêtes SQL de DataAnalysis, en plus de l'utiliser dans les nœuds MaxCompute SQL du développement de données ?

R : Oui. Les UDF enregistrées dans DataWorks sont stockées dans le projet MaxCompute sous-jacent. Par conséquent, vous pouvez les utiliser à la fois dans les nœuds MaxCompute SQL et dans la fonctionnalité SQL Query (version héritée) de DataAnalysis.