Tous les produits
Search
Centre de documentation

Platform For AI:Read and write MaxCompute tables with PyODPS

Dernière mise à jour :Aug 09, 2026

Utilisez PyODPS dans les instances DSW pour lire et écrire des données dans les tables MaxCompute via SQL.

Prérequis

Avant de commencer, vérifiez que les conditions suivantes sont remplies :

  • MaxCompute est activé. Pour plus d'informations, consultez la rubrique Activer MaxCompute.

  • Votre compte dispose des autorisations requises pour les projets MaxCompute. Les comptes Alibaba Cloud ne nécessitent aucune autorisation supplémentaire. Pour les utilisateurs RAM, suivez les étapes ci-dessous afin de leur accorder les autorisations nécessaires.

    Étapes

    1. Connectez-vous à la console MaxCompute avec votre compte Alibaba Cloud et sélectionnez une région dans le coin supérieur gauche.

    2. Dans le volet de navigation de gauche, choisissez Workspace > Projects.

    3. Sur la page Projects, localisez le projet cible et cliquez sur Manage dans la colonne Actions.

    4. Sous l'onglet Role Permissions, recherchez role_project_dev, cliquez sur Manage Members et ajoutez l'utilisateur RAM.

    Pour en savoir plus sur la gestion des autorisations MaxCompute, consultez la rubrique Gérer les autorisations des utilisateurs dans la console.

  • Python 3.6 ou version ultérieure est installé.

Procédure

Utilisez PyODPS pour interagir avec les données dans MaxCompute ou Machine Learning Designer. Pour plus de détails, reportez-vous à la documentation PyODPS.

  1. Installez PyODPS.

    Dans le terminal DSW, exécutez la commande suivante :

    pip install pyodps
  2. Exécutez la commande suivante pour vérifier l'installation. L'absence de sortie ou d'erreur indique que l'installation a réussi.

    # On Windows, use python -c "from odps import ODPS"
    python3 -c "from odps import ODPS"
  3. Pour installer des packages destinés à une version Python autre que celle par défaut, exécutez la commande suivante dans l'environnement Python spécifique concerné.

    /home/tops/bin/python3.7 -m pip install setuptools>=3.0
    # Example: /home/tops/bin/python3.7 is the installation path.
  4. Lisez les données depuis MaxCompute à l'aide de SQL.

    import numpy as np
    import pandas as pd
    import os
    
    from odps import ODPS
    from odps.df import DataFrame
    
    # Establish connection.
    o = ODPS(
        os.getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'),
        os.getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'),
        project='your-default-project',
        endpoint='your-end-point',
    )
    
    # Read data from MaxCompute.
    sql = '''
    SELECT
        *
    FROM
        your-default-project.<table>
    LIMIT 100
    ;
    '''
    query_job = o.execute_sql(sql)
    result = query_job.open_reader(tunnel=True)
    
    # Set n_process > 1 to enable multithreading for faster data reading.
    df = result.to_pandas(n_process=1)

    Paramètres de configuration :

    • ALIBABA_CLOUD_ACCESS_KEY_ID et ALIBABA_CLOUD_ACCESS_KEY_SECRET : ID AccessKey et secret AccessKey de votre compte Alibaba Cloud. Définissez-les comme variables d'environnement pour éviter toute fuite d'identifiants.

      • Obtenez une paire de clés AccessKey. Consultez la rubrique Créer une clé AccessKey.

      • Configurez les variables d'environnement. Consultez la rubrique Configurer les variables d'environnement.

      • your-default-project et your-end-point : Remplacez ces valeurs par le nom de votre projet par défaut et votre endpoint. Pour connaître les endpoints régionaux, consultez la rubrique Endpoints.

    Pour découvrir d'autres opérations PyODPS sur les tables MaxCompute, telles que l'écriture de données, consultez la rubrique table.