Tous les produits
Search
Centre de documentation

AnalyticDB:Use Azkaban to schedule XIHE SQL jobs

Dernière mise à jour :Aug 10, 2026

Azkaban est un ordonnanceur de flux de travaux par lots open source qui permet de créer, d'exécuter et de gérer des workflows comportant des dépendances complexes. Utilisez-le pour exécuter des tâches SQL XIHE sur AnalyticDB for MySQL selon une planification récurrente, avec suivi des dépendances entre les tâches.

Prérequis

Avant de commencer, assurez-vous de disposer des éléments suivants :

Préparer les données de test

Dans votre cluster AnalyticDB for MySQL, créez une base de données et une table de test :

-- Create a database.
CREATE DATABASE azkaban_test;

-- Create a table.
CREATE TABLE azkaban_test.names (
  id BIGINT,
  name STRING
);

-- Insert data into the table.
INSERT INTO azkaban_test.names VALUES(1, 'Li'), (2, 'Yang');

Étape 1 : Rédiger un fichier de workflow

Un workflow Azkaban se compose de fichiers .job, chacun définissant une tâche unique. Chaque tâche déclare son type, la commande shell à exécuter et les tâches dont elle dépend. Regroupez tous les fichiers .job dans un fichier ZIP à télécharger.

Cet exemple définit trois tâches qui s'exécutent séquentiellement : startexec_queryend.

Fichiers de tâches

start.job — point d'entrée du workflow :

#start
type=command
command=echo 'job start'

exec_query.job — exécute l'instruction SQL sur AnalyticDB for MySQL une fois la tâche start terminée :

type=command
dependencies=start
command=mysql -h<endpoint> -u<username> -p<password> -P3306 -e "create table azkaban_test.duplicated_names as select * from azkaban_test.names"

end.job — signale la fin du workflow une fois la tâche exec_query terminée :

#end
type=command
dependencies=exec_query
command=echo 'job end'

Les champs clés de chaque fichier .job sont les suivants :

Champ Description
type=command Exécute la valeur de command en tant que commande shell
dependencies Liste séparée par des virgules des noms de tâches qui doivent être terminées avant le démarrage de cette tâche
command La commande shell à exécuter

La commande MySQL dans exec_query.job utilise les paramètres suivants :

Paramètre Description
-h Endpoint du cluster AnalyticDB for MySQL. Vous le trouverez sur la page Cluster Information dans la console AnalyticDB for MySQL.
-u Nom du compte de base de données pour le cluster
-p Mot de passe du compte de base de données
-P Numéro de port. Définissez-le sur 3306.
-e Instruction SQL à exécuter

Empaqueter le workflow

Créez un dossier, placez-y tous les fichiers .job et compressez le dossier au format ZIP.

Étape 2 : Créer un projet et télécharger le fichier de workflow

  1. Connectez-vous à la console Azkaban. Dans la barre de navigation supérieure, cliquez sur Projects.

  2. Dans le coin supérieur droit, cliquez sur Create Project.

  3. Dans la boîte de dialogue Create Project, saisissez un Name et une Description, puis cliquez sur Create Project.

  4. Dans le coin supérieur droit, cliquez sur Upload.

  5. Dans la boîte de dialogue Upload Project Files, sélectionnez le fichier ZIP que vous avez créé, puis cliquez sur Upload.

Étape 3 : Exécuter le workflow

  1. Sur la page Projects, cliquez sur l'onglet Flows.

  2. Cliquez sur Execute Flow.

  3. Dans la boîte de dialogue, cliquez sur Execute.

  4. Dans la notification Flow submitted, cliquez sur Continue.

Étape 4 : Afficher les détails d'exécution

  1. Dans la barre de navigation supérieure, cliquez sur Executing.

  2. Cliquez sur l'onglet Recently Finished pour voir les exécutions terminées.

  3. Cliquez sur un execution ID pour ouvrir la page de détails de l'exécution.

  4. Sur l'onglet Job List, examinez l'état et la durée de chaque tâche.

  5. Cliquez sur Logs à côté d'une tâche pour afficher son journal d'exécution complet.