Tous les produits
Search
Centre de documentation

DataWorks:Image personnalisée

Dernière mise à jour :Aug 10, 2026

Lorsque l'environnement d'exécution par défaut de DataWorks ne satisfait pas les dépendances requises pour les tâches PyODPS ou Shell — par exemple, si vous avez besoin de bibliothèques Python supplémentaires telles que pandas ou jieba — créez une image personnalisée. Une image personnalisée regroupe toutes les dépendances dans un environnement d'exécution standardisé et réutilisable.

Limites

  • Limites liées à l'édition :

    • Toutes les éditions prennent en charge la création et l'utilisation d'images personnalisées.

    • Seule l'édition Professionnelle ou supérieure prend en charge la construction d'images.

  • Limites liées au groupe de ressources : La fonctionnalité d'image personnalisée prend en charge uniquement les groupes de ressources serverless.

    Pour les groupes de ressources hérités, utilisez Cloud Assistant pour installer les dépendances externes.
  • Limites liées aux autorisations : Vous devez disposer de l'autorisation AliyunDataWorksFullAccess ou ModifyResourceGroup.

    Pour plus de détails sur l'autorisation, consultez Politique RAM pour les autorisations de service et de console .

Quotas et limites

  • Quantité d'images : Le nombre d'images personnalisées que vous pouvez créer dépend de votre édition DataWorks.

    • Édition Basique et Édition Standard : 10

    • Édition Professionnelle : 50

    • Édition Entreprise : 100

  • Concurrence de construction : Vous pouvez construire jusqu'à deux images simultanément dans chaque région.

  • Exigences relatives aux images ACR :

    • Édition de l'instance : Seules les instances Enterprise Edition d'Alibaba Cloud Container Registry (ACR) sont prises en charge.

    • Architecture de l'instance : Seule l'architecture AMD64 est prise en charge.

    • Taille de l'image : Une seule image ne peut pas dépasser 5 Go.

    • Configuration du fuseau horaire : Installez le package de fuseau horaire tzdata pour éviter les échecs de conteneur dus à une incompatibilité de fuseau horaire avec DataWorks.

  • Construction d'images : Les constructions persistantes sont disponibles uniquement pour les images personnalisées créées à partir des images officielles DataWorks. Les images personnalisées qui référencent une image ACR ne prennent pas en charge les constructions persistantes et doivent être extraites et déployées à nouveau à chaque exécution de tâche.

  • Types de nœuds pris en charge et méthodes de construction :

    Type de nœud

    Construction à partir d'images officielles

    Construction à partir d'images ACR

    PyODPS2

    Pris en charge

    Non pris en charge

    PyODPS3

    Pris en charge

    Non pris en charge

    EMR Spark

    Pris en charge

    Non pris en charge

    EMR Spark SQL

    Pris en charge

    Non pris en charge

    EMR SHELL

    Pris en charge

    Non pris en charge

    Shell

    Pris en charge

    Pris en charge

    Python

    Pris en charge

    Pris en charge

    Notebook

    Non pris en charge

    Pris en charge

    CDH

    Pris en charge

    Non pris en charge

    Assignment Node

    Pris en charge

    Non pris en charge

Procédure

1. Créer une image personnalisée

Créez une image personnalisée dans DataWorks à partir d'une DataWorks Official Images ou d'une Alibaba Cloud Container Registry Image. Les paramètres de configuration varient selon le type de référence que vous sélectionnez.

À partir d'une image officielle DataWorks

  1. Connectez-vous à la console DataWorks. Dans le volet de navigation de gauche, cliquez sur Image Management.

  2. Dans l'onglet DataWorks Official Images, sélectionnez une image cible à utiliser comme base et cliquez sur Create Custom Image dans la colonne Operation. Dans la boîte de dialogue qui s'affiche, le système remplit automatiquement les informations relatives à l'image cible. Le tableau suivant décrit les paramètres restants.

    Type de référence : L'image officielle DataWorks est sélectionnée par défaut. Espace de noms de l'image : DataWorks Default est sélectionné par défaut. Référentiel d'images : DataWorks Default est sélectionné par défaut.

    Paramètre

    Description

    Image Name/ID

    L'image officielle cible est sélectionnée par défaut. Vous pouvez basculer vers une autre image si nécessaire.

    Visible Scope

    Définit la visibilité de l'image personnalisée. Les options sont Visible Only to Creator et Visible to all.

    Module

    Actuellement, les images personnalisées peuvent être utilisées uniquement dans DataStudio.

    Supported Task Type

    Sélectionnez les types de tâches pris en charge par cette image. Les tâches d'un type sélectionné peuvent utiliser cette image comme image d'exécution dans DataStudio.

    Installation Package

    Ajoutez des packages tiers selon vos besoins. Vous pouvez combiner plusieurs méthodes et packages dans une seule configuration :

    • Installation rapide : Dans la liste déroulante Installation Package, sélectionnez Python2, Python3 ou Yum pour sélectionner directement l'environnement ou la ressource que vous souhaitez installer.

      Si le package tiers requis ne figure pas dans la liste déroulante, passez en mode Script pour l'installer manuellement.
    • Saisie manuelle : Dans la liste déroulante Installation Package, sélectionnez Script. Saisissez les commandes d'installation dans la zone de script. Vous pouvez utiliser les exemples de commandes suivants pour télécharger des packages tiers.

      • Exemple de commande pip : pip install xx. Cette commande concerne Python 2.

      • Exemple de commande pip3 : /home/tops/bin/pip3 install 'urllib3<2,0' . Cette commande concerne Python 3.

      • Exemple de commande yum : yum install -y git.

      • Exemple de commande wget : wget git.

        Pour plus d'informations sur les commandes d'installation, consultez Annexe : Référence des commandes d'installation.
    Important

    Si vous devez installer des packages tiers ou leurs dépendances depuis Internet, le VPC lié au groupe de ressources serverless doit avoir un accès à Internet public.

  3. Cliquez sur Determine pour créer l'image.

À partir d'une image Alibaba Cloud Container Registry

Pour créer une image personnalisée basée sur une image ACR, activez Container Registry. Vous pouvez créer des images DataWorks uniquement à partir d'instances ACR Enterprise Edition utilisant l'architecture AMD64.

  1. Connectez-vous à la console DataWorks. Dans le volet de navigation de gauche, cliquez sur Image Management.

  2. Dans l'onglet Custom Images, cliquez sur Create Image. Dans la boîte de dialogue qui s'affiche, configurez les paramètres clés suivants :

    Paramètre

    Description

    Reference Type

    Sélectionnez Alibaba Cloud Container Registry Image.

    Image Instance ID

    Sélectionnez une instance Enterprise Edition que vous avez créée dans Container Registry.

    Image Namespace

    Sélectionnez un espace de noms sous l'instance d'image.

    Image Repository

    Sélectionnez un référentiel d'images sous l'instance d'image.

    Image Version

    Sélectionnez une version d'image dans le référentiel d'images sélectionné.

    VPC to Associate

    Sélectionnez le VPC lié à l'instance d'image. Pour plus d'informations sur la configuration d'un VPC, consultez Configurer le contrôle d'accès via un VPC.

    Important

    DataWorks vous permet de sélectionner un seul VPC pour accéder à une instance d'image ACR.

    Synchronize to MaxCompute

    La valeur par défaut est No. Vous pouvez définir cette option sur Yes uniquement après avoir rempli les deux conditions préalables suivantes.

    • La spécification de l'instance de l'image instance sélectionnée est Standard, Advanced ou Enterprise Edition.

    • Vous disposez de ressources de calcul MaxCompute actives.

    Lorsque les conditions préalables sont remplies :

    • Sélectionnez Yes : Une image personnalisée DataWorks est générée. Lors de la publication de cette image, elle est également construite de manière synchrone en tant qu'image MaxCompute.

      Pour plus d'informations, consultez Créer une image MaxCompute dans un environnement de développement personnel.
    • Sélectionnez No : Seule une image personnalisée DataWorks est générée. Elle n'est pas construite en tant qu'image MaxCompute.

    Visible Scope

    Définit la visibilité de l'image personnalisée. Les options sont Visible Only to Creator et Visible to all.

    Module

    Actuellement, les images personnalisées peuvent être utilisées uniquement dans DataStudio.

    Supported Task Type

    Les images ACR sont démarrées à l'aide du format Commande de démarrage + Chemin du fichier de code de la tâche utilisateur. Les différents types de tâches et leurs commandes de démarrage par défaut sont les suivants :

    • Shell

    • Python : Pour utiliser une image personnalisée créée à partir d'une image ACR pour les tâches Python, assurez-vous que votre instance d'image ACR contient un environnement Python. Sinon, les tâches Python ne sont pas prises en charge.

    • Notebook

      • Pour utiliser une image personnalisée créée à partir d'une image ACR pour les tâches Notebook, vous devez utiliser l'image de base Notebook fournie par DataWorks comme base pour votre image ACR. Cela fournit l'environnement d'exécution requis. L'image de base Notebook fournie par DataWorks est dataworks-public-registry.cn-shanghai.cr.aliyuncs.com/public/dataworks-notebook:py3,11-ubuntu22.04-20241202.

      • Assurez-vous que votre environnement de construction dispose d'un accès à Internet public pour extraire l'image de base Notebook fournie par DataWorks.

  3. Cliquez sur Determine pour créer l'image.

À partir d'une instance d'environnement de développement personnel

Dans la nouvelle version de DataStudio, créez une nouvelle image à partir d'un environnement de développement personnel. Pour plus d'informations, consultez Créer une image DataWorks à partir d'un environnement de développement personnel.

2. Tester et publier une image personnalisée

Dans l'onglet Image Management > Custom Images de la console DataWorks, Publish l'image cible. Vous ne pouvez publier que les images ayant réussi le test. Si le test échoue, cliquez sur image > Modify dans la colonne Operation de l'image personnalisée cible pour modifier sa configuration.

Effectuez les étapes suivantes :

  1. Dans l'onglet Image Management > Custom Images, cliquez sur Publish dans la colonne Operation de l'image cible pour ouvrir la boîte de dialogue Publish Image.

  2. Configurez les paramètres de test et cliquez sur Test.

    Paramètre

    Description

    Test Resource Group

    Sélectionnez le groupe de ressources serverless à utiliser pour le test.

    Test CU

    Les ressources de calcul à allouer pour le test. Par défaut : 0,5 CU. Minimum : 0,25 CU. Si l'image est volumineuse ou si le test prend beaucoup de temps, augmentez la valeur CU et réessayez.

  3. Consultez le Test Result et le Test Log.

    • Une fois le test démarré, le Test Result affiche Testing. Cliquez sur Refresh pour afficher le dernier statut, ou sur Cancel Test pour mettre fin au test en cours. Après avoir annulé le test, sélectionnez un autre groupe de ressources ou une autre allocation CU et recommencez le test.

    • La section Test Log diffuse en temps réel les journaux de ligne de commande du processus de construction de l'image et propose les opérations suivantes : Maximize (afficher les longs journaux en plein écran), Copy (copier l'intégralité du journal dans le presse-papiers en un clic), Download (télécharger sous la forme image-test-log-<imageID>.log) et Collapse/Expand.

    • Si le test échoue, le Test Result affiche Test Failed et un panneau de diagnostic IA apparaît automatiquement. Le système fournit une analyse de l'échec et des solutions recommandées basées sur les journaux de test et les informations sur les couches d'image. Ajustez la configuration de l'image ou les commandes d'installation en fonction du diagnostic et cliquez sur Test Again.

    • Une fois le test réussi, le Test Result affiche Test Successful. Si vous devez modifier les conditions de test et vérifier à nouveau, cliquez sur Test Again.

  4. Une fois le test réussi, cliquez sur Publish en bas de la boîte de dialogue. Les images publiées peuvent être utilisées par les nœuds de tâche DataWorks.

    Remarque

    Le bouton Publish est activé uniquement lorsque le résultat du test est Test Successful ou Publish Failed. Le bouton est désactivé dans les autres états, tels que Testing, Test Failed et Published.

Prenez note des points suivants lors du test et de la publication d'une image :

  • Lorsque vous testez une image personnalisée, sélectionnez un groupe de ressources serverless.

  • Si vous créez une image basée sur une image Alibaba Cloud Container Registry ou créez une image à partir d'un environnement de développement personnel, assurez-vous que le VPC lié au groupe de ressources serverless pour les tests est identique au VPC lié à l'instance d'image ACR.

  • Si l'image personnalisée que vous avez configurée récupère des packages tiers depuis Internet et que le test ne réussit pas pendant une longue période, vérifiez si le VPC lié au Test Resource Group dispose d'un accès à Internet public.

  • En cas d'échec de construction lors des tests ou de la publication de l'image (par exemple, si le statut de publication indique Published (build failed)), la console peut n'afficher que Build Failed sans fournir de raisons détaillées, ce qui rend le dépannage autonome difficile. Un scénario courant est un espace disque insuffisant dans l'environnement de construction. L'espace disque requis pendant la phase de construction peut être légèrement supérieur à celui de la phase de test. Par conséquent, le test peut réussir, mais le processus échoue lors de la publication ou de la génération des artefacts d'image. Essayez d'augmenter la valeur Calculate CU (par exemple de 0,5 CU) et réessayez. Si le problème persiste, soumettez un ticket pour contacter le support technique Alibaba Cloud.

3. Associer l'image à un espace de travail

Une fois une image publiée, attribuez-la à un autre espace de travail pour la rendre disponible.

  1. Dans l'onglet Image Management > Custom Images de la console DataWorks, recherchez l'image personnalisée Published.

  2. Dans la colonne Operation de l'image cible, cliquez sur image > Change Workspace pour associer l'image personnalisée à un espace de travail.

4. Utiliser une image dans une tâche

Utiliser une image dans le nouveau DataStudio

  1. Accéder à DataStudio : Accédez à la page DataWorks Workspaces, basculez vers la région cible en haut, recherchez l'espace de travail cible, puis cliquez sur Shortcuts > DataStudio dans la colonne Operation.

  2. Configurer l'image : Dans DataStudio, recherchez le nœud de tâche pour lequel vous souhaitez tester l'image personnalisée, cliquez sur Scheduling Settings à droite, puis configurez les propriétés des ressources.

    • Resource Group : Sélectionnez un groupe de ressources serverless.

      Si le groupe de ressources cible n'apparaît pas, vérifiez s'il est associé à l'espace de travail actuel. Accédez à la page Resource Groups , recherchez le groupe de ressources cible, puis cliquez sur Associate Workspace dans la colonne Operation pour terminer l'association.
      Important

      Pour garantir le bon fonctionnement des nœuds de tâche, assurez-vous que le Resource Group est identique au Test Resource Group que vous avez sélectionné lors de la Publish Image.

    • Image : Sélectionnez une image personnalisée publiée.

      Si vous changez d'image, republiez le nœud pour que la modification prenne effet.

      Dans le panneau Scheduling configurations > Scheduling properties, configurez Resource group et compute CU (par exemple, 0,5), et sélectionnez une image dans la liste déroulante Image.

  3. Déboguer le nœud : Dans le panneau Run Configuration à droite du nœud, configurez Computing Resources, Resource Group, Calculate CU, Image et Script Parameters, puis cliquez sur Run dans la barre d'outils supérieure.

  4. Publier le nœud : Dans la barre d'outils supérieure, cliquez sur Publish pour publier le nœud dans l'environnement de production.

Utiliser une image dans l'ancien DataStudio

  1. Accéder à DataStudio : Connectez-vous à la console DataWorks, basculez vers la région cible et cliquez sur Data Development and O&M > DataStudio dans le volet de navigation de gauche. Sélectionnez l'espace de travail souhaité dans la liste déroulante et cliquez sur Data Analytics.

  2. Configurer l'image : Dans DataStudio, recherchez le nœud de tâche pour lequel vous souhaitez tester l'image personnalisée, cliquez sur Scheduling Settings à droite, puis configurez les propriétés des ressources dans la section Scheduling Settings.

    • Resource Group for Scheduling : Sélectionnez un groupe de ressources serverless.

      Si le groupe de ressources cible n'apparaît pas, vérifiez s'il est associé à l'espace de travail actuel. Accédez à la page Resource Groups , recherchez le groupe de ressources cible, puis cliquez sur Associate Workspace dans la colonne Operation pour terminer l'association.
      Important

      Pour garantir le bon fonctionnement des nœuds de tâche, assurez-vous que le Resource Group for Scheduling est identique au Test Resource Group que vous avez sélectionné lors de la Publish Image.

    • Image : Sélectionnez une image personnalisée publiée.

      Si vous changez d'image, republiez le nœud pour que la modification prenne effet.
  3. Déboguer le nœud : Dans la barre d'outils supérieure, cliquez sur Run with Parameters (image). Dans la boîte de dialogue qui s'affiche, configurez Resource Group Name, CUs for Node Running et Image, puis cliquez sur Run.

  4. Publier le nœud : Dans la barre d'outils supérieure, cliquez sur Save et Commit pour publier le nœud dans l'environnement de production.

5. Construire une image persistante

Important

Nous vous recommandons vivement de rendre une image persistante après sa publication et une fois qu'elle fonctionne comme prévu. Cette pratique prévient les échecs d'exécution qui peuvent survenir si une tâche télécharge une version inattendue d'un package lors de l'initialisation. De tels problèmes peuvent résulter de bibliothèques sources altérées ou de dépendances de version non spécifiées.

Une image personnalisée standard est redéployée à chaque exécution, ce qui augmente le temps de démarrage et les coûts de calcul. Une image persistante nécessite une seule construction pour une réutilisation illimitée, réduisant ainsi les coûts et garantissant un environnement cohérent. Vous pouvez construire des images persistantes uniquement pour les images personnalisées créées à partir d'images officielles DataWorks.

  1. Dans l'onglet Image Management > Custom Images de la console DataWorks, recherchez l'image personnalisée publiée.

  2. Dans la colonne Operation de l'image cible, cliquez sur image > Create pour construire l'image personnalisée en une image persistante.

  3. Dans la boîte de dialogue Resource Group for Which You Want to Create Image, configurez les paramètres suivants et cliquez sur Continue.

    • Groupe de ressources de construction : Sélectionnez le groupe de ressources serverless à utiliser pour cette construction.

    • CU de construction : Les ressources de calcul à allouer pour la construction. La valeur par défaut est 0,5 CU et la valeur minimale est 0,25 CU. La valeur doit être incrémentée par pas de 0,25. Si l'image est volumineuse ou si la construction prend beaucoup de temps, augmentez cette valeur.

    Important

    Pour éviter les échecs de construction dus à des problèmes réseau, assurez-vous que le build resource group est identique au Test Resource Group que vous avez utilisé lors de la publication de l'image personnalisée.

  4. La construction d'une image prend environ 5 à 10 minutes, selon sa taille. Une fois la construction réussie, le statut de l'image passe à Published (Build Succeeded).

6. Autres opérations

Dans l'onglet Image Management > Custom Images, effectuez également les opérations de maintenance courantes suivantes sur une image :

Actions

Description

Disable / Enable

Dans la colonne Operation, cliquez sur Disable. Une fois l'image désactivée, elle n'est plus affichée ni référencée dans les modules. Les tâches en cours d'exécution qui utilisent cette image ne sont pas affectées. L'option devient alors Enable, sur laquelle vous pouvez cliquer pour réactiver l'image. L'opération Disable n'est pas disponible si le statut de l'image est Expired.

Modify

Dans la colonne Operation, cliquez sur Modify pour modifier des propriétés telles que la description de l'image, la portée de visibilité, les modules pris en charge, les types de tâches de nœud et les packages d'installation. Vous ne pouvez pas modifier une image dont le statut est Publishing ou Building.

View Version

Dans la colonne Operation, cliquez sur View Version pour afficher toutes les versions historiques de l'image. Cela facilite le suivi et les restaurations.

Delete Image

Dans la colonne Operation, cliquez sur Delete Image.

Avertissement

La suppression n'affecte pas les tâches en cours d'exécution, mais une image supprimée ne peut pas être restaurée. Elle ne sera plus disponible pour les nouvelles tâches ni visible sur la page Image Management.

Tags

Dans la colonne Tags de la liste des images personnalisées, ajoutez et gérez des tags pour regrouper et rechercher des images selon des critères tels que la ligne métier ou l'environnement. Cette colonne n'est pas affichée dans la liste DataWorks official images.

Facturation

La construction d'images entraîne un coût de calcul calculé comme suit : Nombre de CU × Durée de construction. Le système alloue 0,5 CU par défaut. Pour plus d'informations sur la facturation, consultez Normes de facturation pour les groupes de ressources Serverless.

Utilisation en production

Suivez ces recommandations pour maintenir la stabilité et la rentabilité des images personnalisées en production.

  • Images persistantes : Intégrez les configurations stables dans des images persistantes pour éviter de réinstaller les dépendances à chaque exécution. Cela réduit le temps de démarrage, diminue les coûts de calcul et améliore la stabilité.

  • Cohérence de l'environnement : Maintenez la cohérence des configurations VPC et réseau entre les groupes de ressources serverless utilisés pour les tests, la construction et la planification de production, en particulier lors de l'accès à un référentiel ACR privé ou au réseau public.

  • Épinglage de version : Lors de l'installation de dépendances avec la méthode Script, spécifiez des numéros de version exacts (par exemple, pip install pandas==1.5.3). Cela empêche les comportements inattendus dus aux mises à jour des bibliothèques amont.

  • Plan de restauration : Si une tâche de production échoue après une mise à jour d'image, revenez à une version précédente à l'aide de l'historique de déploiement des tâches, ou définissez l'image sur une version antérieure et stable dans les paramètres de planification.

Cas d'utilisation

Cet exemple montre comment utiliser une image personnalisée avec un nœud PyODPS pour effectuer une segmentation de mots chinois. Le workflow pré-installe la boîte à outils jieba dans une image personnalisée, lit le texte d'une table MaxCompute, le segmente et écrit les résultats dans une table de destination pour la planification en aval.

  1. Créez des données de test.

    1. Créez un espace de travail DataWorks et associez-le à une ressource de calcul MaxCompute. Pour plus de détails, consultez Créer un espace de travail et Gérer les ressources de calcul.

    2. Dans Data Studio, créez un nœud ODPS (dans l'ancien Data Studio) ou un nœud MaxCompute SQL (dans le nouveau Data Studio) pour créer et remplir une table de test.

      Remarque

      L'exemple suivant utilise un paramètre de planification. Dans Scheduling Settings à droite, définissez le nom du paramètre sur bday et la valeur sur $[yyyymmdd].

      Créer une table de test.

      -- Create a test table.
      CREATE TABLE IF NOT EXISTS custom_img_test_tb
      (
          c_customer_id BIGINT NOT NULL,
          c_customer_text STRING NOT NULL,
          PRIMARY KEY (c_customer_id)
      )
      COMMENT 'TABLE COMMENT'
      PARTITIONED BY (ds STRING COMMENT 'partition')
      LIFECYCLE 90;
      -- Insert test data into the table.
      INSERT INTO custom_img_test_tb PARTITION (ds='${bday}') (c_customer_id, c_customer_text) VALUES
      (1, 'As evening snow is due, won''t you stay for a drink?'),
      (2, 'Moon sets, crows caw, frost fills the sky; river maples and fishing fires sleeplessly sigh.'),
      (3, 'Where mountains and rivers seemed to end, a village appears amidst the willows and flowers.'),
      (4, 'In spring slumber, unaware of dawn, bird songs fill the air all around.'),
      (5, 'Quiet night thoughts: bright moonlight before my bed, like frost upon the ground.'),
      (6, 'The bright moon rises over the sea; from the farthest shores, we share this moment.'),
      (7, 'The swallows of the noble Wang and Xie clans of old now fly into the homes of common folk.'),
      (8, 'A line of white egrets ascends the blue sky; the window frames the ancient snows of the Western Range.'),
      (9, 'Life is for joy, so live it to the fullest; let not your golden cup be empty under the moon.'),
      (10, 'Heaven gave me talent, so it must be put to use; a thousand pieces of gold, once spent, will come back again.');
    3. Enregistrez et déployez le nœud.

  2. Créez une image personnalisée.

    Pour plus de détails, consultez Créer une image personnalisée. Configurez les paramètres clés comme suit :

    • Nom/ID de l'image : Sélectionnez dataworks_pyodps_task_pod, l'image officielle DataWorks pour les nœuds PyODPS.

    • Types de tâches pris en charge : Sélectionnez PyODPS2 et PyODPS 3.

    • Package d'installation : Sélectionnez Python3 et jieba.

  3. Publiez l'image personnalisée et associez-la à votre espace de travail. Pour plus de détails, consultez Publier une image personnalisée et Modifier l'association d'espace de travail d'une image.

  4. Utilisez l'image personnalisée dans une tâche planifiée.

    1. Dans Data Studio, créez un nœud PyODPS 3 et ajoutez le code suivant :

      Utiliser l'image personnalisée.

      import jieba
      from odps import ODPS
      from odps.models import TableSchema as Schema, Column, Partition
      # Read data from the table.
      table = o.get_table('custom_img_test_tb')
      partition_spec = f"ds={args['bday']}"
      with table.open_reader(partition=partition_spec) as reader:
          records = [record for record in reader]
      # Segment the extracted text.
      participles = [' | '.join(jieba.cut(record['c_customer_text'])) for record in records]
      # Create the destination table.
      if not o.exist_table("participle_tb"):
          schema = Schema(columns=[Column(name='word_segment', type='string', comment='Word segmentation result')], partitions=[Column(name='ds', type='string', comment='Partition field')])
          o.create_table("participle_tb", schema)
      # Write the segmentation results to the destination table.
      # Define the output partition and table.
      output_partition = f"ds={args['bday']}"
      output_table = o.get_table("participle_tb")
      # If the partition does not exist, create it.
      if not output_table.exist_partition(output_partition):
          output_table.create_partition(output_partition)
      # Write the segmentation results to the table.
      record = output_table.new_record()
      with output_table.open_writer(partition=output_partition, create_partition=True) as writer:
          for participle in participles:
              record['word_segment'] = participle
              writer.write(record)
    2. Dans les paramètres de planification à droite, configurez les paramètres clés suivants :

      • Paramètre de planification : Définissez le nom du paramètre sur bday et la valeur sur $[yyyymmdd].

      • Resource Group for Scheduling : Sélectionnez le même groupe de ressources serverless que celui spécifié pour Publish Image lors de Test Resource Group.

      • Image : Sélectionnez l'image personnalisée publiée associée à l'espace de travail actuel.

    3. Déboguer le nœud.

      • Si vous utilisez l'ancien Data Studio, cliquez sur Run with Parameters (image) dans la barre d'outils du nœud. Configurez Resource Group Name, CUs for Node Running, Image et Custom Parameters, puis cliquez sur Run.

      • Si vous utilisez le nouveau Data Studio, dans le panneau Run Configuration à droite, configurez Computing Resources, Resource Group, Calculate CU, Image et Script Parameters. Ensuite, cliquez sur Run dans la barre d'outils du nœud.

    4. (Facultatif) Créez une requête ad hoc (dans l'ancien Data Studio) ou un fichier SQL dans votre répertoire personnel (dans le nouveau Data Studio), puis exécutez l'instruction SQL suivante pour vérifier les données de la table de sortie.

      -- Replace <partition_date> with the actual partition date.
      SELECT * FROM participle_tb WHERE ds=<partition_date>;

      Si la requête renvoie des données, le résultat inclut la colonne word_segment (résultats de segmentation, avec des mots séparés par des barres verticales |) et la colonne ds (date de partition).

    5. Déployez le nœud PyODPS dans l'environnement de production.

      Remarque

      Les modifications d'image effectuées dans Data Studio ne sont pas automatiquement synchronisées avec l'environnement de production. Déployez la tâche pour que les modifications prennent effet. Pour plus de détails, consultez Déployer des tâches (ancien Data Studio) ou Déployer des nœuds/workflows (nouveau Data Studio).

  5. Construisez une image persistante à partir de l'image personnalisée. Pour plus de détails, consultez Construire une image persistante.

FAQ

Q : Une tâche Python signale l'erreur "urllib3 v2.0 only supports OpenSSL 1.1.1+".

R : Le package urllib3 v2.0 requiert OpenSSL 1.1.1 ou une version ultérieure. Pour résoudre ce problème, rétrogradez urllib3 vers une version compatible. Par exemple : /home/tops/bin/pip3 install urllib3==1.26.16.

Documentation connexe

Annexe : Commandes d'installation

Pour installer des packages dans une image personnalisée à l'aide de la méthode script, utilisez les commandes suivantes.

  • Pour les nœuds PyODPS 2, exécutez les commandes suivantes.

    pip install <package-name> -i  https://pypi.tuna.tsinghua.edu.cn/simple
    pip install <package-name>
    Remarque

    Si vous êtes invité à mettre à niveau PIP, exécutez la commande suivante : pip install --upgrade pip.

  • Pour les nœuds PyODPS 3, exécutez les commandes suivantes.

    /home/tops/bin/pip3 install <package-name> -i https://pypi.tuna.tsinghua.edu.cn/simple
    /home/tops/bin/pip3 install <package-name>
    Remarque
    • Si vous êtes invité à mettre à niveau PIP, exécutez la commande suivante : /home/tops/bin/pip3 install --upgrade pip.

    • Si l'erreur /home/admin/usertools/tools/cmd-0.sh: line 3: /home/tops/bin/python3: No such file or directory se produit, soumettez un ticket pour demander les autorisations requises.

    Le tableau suivant répertorie les sources miroir Python publiques.

    Organisation

    URL du miroir

    Alibaba Cloud

    https://mirrors.aliyun.com/pypi/simple/

    Important

    Vous pouvez obtenir des packages Python depuis Alibaba Cloud sans activer l'accès à Internet.

    Université Tsinghua

    https://pypi.tuna.tsinghua.edu.cn/simple

    Université des sciences et technologies de Chine (USTC)

    https://pypi.mirrors.ustc.edu.cn/simple/