Tous les produits
Search
Centre de documentation

MaxCompute:Écrire une tâche Graph

Dernière mise à jour :Aug 21, 2026

Cette rubrique utilise l'algorithme Single Source Shortest Path (SSSP) pour illustrer l'écriture d'une tâche Graph.

Prérequis

  • Le client MaxCompute est installé, configuré et connecté à une instance MaxCompute. Pour plus d'informations, consultez la rubrique Client MaxCompute.

  • IntelliJ IDEA 2024 et une version compatible de MaxCompute Studio mise à jour en 2024 sont installés et configurés. Pour plus d'informations, consultez les rubriques Installer MaxCompute Studio et Configurer MaxCompute Studio.

  • Apache Maven version apache-maven-3.5.0 est configuré.

  • JDK 1.8 ou une version ultérieure est installé.

  • Un fichier de données est prêt. Cette rubrique utilise le fichier sssp.txt comme exemple.

    1 2:2,3:1,4:4
    2 1:2,3:2,4:1
    3 1:1,2:2,5:1
    4 1:4,2:1,5:1
    5 3:1,4:1

Procédure

  1. Démarrez le client MaxCompute et exécutez les commandes suivantes pour créer la table d'entrée sssp_in et la table de sortie sssp_out.

    CREATE TABLE sssp_in (v bigint, es string);
    CREATE TABLE sssp_out (vertex bigint, value bigint);
  2. Exécutez la commande Tunnel pour charger les données du fichier sssp.txt dans la table sssp_in, en utilisant un espace comme délimiteur de colonne.

    tunnel u -fd " " sssp.txt sssp_in;
    Remarque

    Dans cet exemple, le fichier sssp.txt est enregistré dans le répertoire bin du client MaxCompute. Veillez à indiquer le chemin correct vers votre fichier sssp.txt.

  3. Créez l'exemple SSSP.

    1. Dans IntelliJ IDEA, créez un MaxCompute Java Module et nommez-le odps-graph-example-sssp.

      Remarque

      Pour plus d'informations, consultez la rubrique Créer un MaxCompute Java Module.

    2. Dans le nouveau module odps-graph-example-sssp, créez la classe BaseLoadingVertexResolver et la classe SSSP. Pour obtenir le code Java complet, reportez-vous à l'exemple de graphe orienté dans la rubrique Single Source Shortest Path. Ajoutez les dépendances suivantes au fichier pom.xml.

      <dependency>
          <groupId>com.aliyun.odps</groupId>
          <artifactId>odps-sdk-core</artifactId>
          <version>0.48.0-public</version>
      </dependency>
      <dependency>
          <groupId>com.aliyun.odps</groupId>
          <artifactId>odps-sdk-graph</artifactId>
          <version>0.48.0-public</version>
      </dependency>
      
      <!-- For local testing -->
      <dependency>
          <groupId>com.aliyun.odps</groupId>
          <artifactId>odps-graph-local</artifactId>
          <version>0.48.0-public</version>
      </dependency>
    3. Dans IntelliJ IDEA, utilisez MaxCompute Studio pour empaqueter le projet. Pour des instructions détaillées, consultez la rubrique Empaqueter, charger et enregistrer.

      Remarque

      Dans cet exemple, le package JAR déployé sur le projet MaxCompute est nommé odps-graph-example-sssp.jar.

  4. Dans le client MaxCompute, exécutez la commande suivante pour lancer la tâche SSSP.

    jar -libjars odps-graph-example-sssp.jar -classpath <LOCAL_JAR_PATH>/odps-graph-example-sssp.jar SSSP 1 sssp_in sssp_out;

    LOCAL_JAR_PATH : chemin local vers le fichier odps-graph-example-sssp.jar.

    Une fois la tâche terminée, exécutez select * from sssp_out; pour interroger la table sssp_out et vérifier le résultat.

    vertex    value
    1        0
    2        2
    3        1
    4        3
    5        2
    • vertex : ID d'un sommet.

    • value : distance la plus courte entre le sommet correspondant et le sommet source (1).

    Remarque

    Pour utiliser la fonctionnalité Graph, il suffit de soumettre une tâche Graph.