Cette rubrique explique comment développer un programme de graphe dans MaxCompute Studio. Le processus comprend l'écriture, le débogage, l'empaquetage, le chargement et l'exécution du programme.
Prérequis
Effectuez les tâches suivantes :
Écrire un programme de graphe
-
Créez une classe Java MaxCompute.
Cette rubrique utilise la classe
BaseLoadingVertexResolveret la classeSSSPcomme exemples.Dans le volet Project, cliquez avec le bouton droit sur le répertoire source du module (c'est-à-dire ), puis sélectionnez .
-
Saisissez un nom (Name), sélectionnez GraphLoader ou Vertex comme type, puis appuyez sur Entrée.
-
Name : saisissez le nom de la classe Java MaxCompute que vous souhaitez créer.
RemarqueSi vous n'avez pas créé de package, saisissez packagename.classname. Le package est automatiquement créé.
-
Sélectionnez GraphLoader ou Vertex. La liste suivante décrit les types :
GraphLoader : utilisé pour charger un graphe. Utilisez l'interface setGraphLoaderClass de GraphJob pour fournir une implémentation GraphLoader.
Vertex : abstraction d'un sommet de graphe. Il inclut les propriétés suivantes : id, value, halted et edges. Utilisez l'interface setVertexClass de GraphJob pour fournir une implémentation Vertex.
-
Une fois la classe créée, développez le programme Java dans l'éditeur. Pour obtenir des exemples de code pour la classe
BaseLoadingVertexResolveret la classeSSSP, consultez la section SSSP.
-
Ajoutez les dépendances requises à votre 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>Après avoir configuré le fichier pom.xml, vérifiez dans le volet Maven que les dépendances sont chargées.
Déboguer avec une exécution locale
Exécutez le programme de graphe localement pour vérifier que la sortie correspond à vos attentes.
Cliquez avec le bouton droit sur le fichier Java et sélectionnez Run.
-
Dans la boîte de dialogue Run/Debug Configurations, configurez les paramètres d'exécution.
Pour MaxCompute project, sélectionnez local dans la liste déroulante de gauche et le projet cible, par exemple example_project, dans celle de droite.
MaxCompute project : le projet dans lequel vous exécuterez le programme de graphe.
Download Record limit : nombre maximal d'enregistrements à télécharger. La valeur par défaut est 100.
-
Cliquez sur OK pour démarrer l'exécution.
Lors d'une exécution locale, le programme lit les données depuis la table spécifiée dans le répertoire warehouse en tant qu'entrée. Vous pouvez consulter la sortie du journal dans la console. Pour plus d'informations sur le répertoire warehouse, consultez la section Répertoire warehouse.
Empaqueter et charger
Une fois le programme débogué, empaquetez-le dans un fichier JAR et chargez-le sur MaxCompute en tant que ressource. Pour plus d'informations, consultez la section Empaqueter, charger et enregistrer.
Exécuter le programme de graphe
Dans le volet de navigation de gauche d'IntelliJ IDEA, ouvrez le volet Project.
Cliquez avec le bouton droit sur le nom du projet et sélectionnez Open in Console.
-
Dans le volet Console, exécutez le programme de graphe. La commande suivante est fournie à titre d'exemple. Avant d'exécuter la commande, remplacez la classe principale, la table d'entrée et la table de sortie par vos valeurs réelles.
Pour connaître d'autres commandes, consultez la section Commandes JAR.
jar -libjars xxx.jar -classpath /Users/home/xxx.jar com.aliyun.odps.graph.examples.PageRank pagerank_in pagerank_out;PageRank : la classe principale définie dans le programme de graphe.
pagerank_in : la table d'entrée.
pagerank_out : la table de sortie.