Cette rubrique décrit les fonctionnalités et l'utilisation de LogView V2.0 (ci-après dénommé LogView). Accédez à l'URL de LogView pour consulter les informations relatives aux jobs.
Présentation
LogView enregistre et affiche le statut des jobs MaxCompute. Il offre les fonctionnalités suivantes :
Un graphe orienté acyclique (DAG) interactif affiche l'architecture logique du traitement des jobs. Vous pouvez également consulter les opérateurs d'un job.
Lecture de l'exécution du job.
Visualisation de l'utilisation de la mémoire et du CPU à l'aide de Fuxi Sensor.
Point d'accès
La soumission d'un job MaxCompute génère automatiquement une URL commençant par https://logview.aliyun.com/logview.
Si vous utilisez le client MaxCompute pour soumettre le job, copiez l'URL dans la barre d'adresse d'un navigateur pour accéder à LogView.
Si vous utilisez DataWorks pour soumettre le job, cliquez sur l'URL pour accéder directement à la page LogView.
La page LogView se divise en trois sections : la section supérieure contenant le titre et les fonctionnalités (1), le volet Basic Info à gauche (2) et la section des détails du job à droite (3, qui contient les onglets Job Details, Result, SourceXML, SQL Script et Summary, ainsi que le diagramme DAG du graphique de progression et la liste des jobs Fuxi).
|
N° |
Section |
|
1 |
La section contenant le titre et les fonctionnalités. Pour plus d'informations, consultez la section Titre et fonctionnalités. |
|
2 |
La section Basic Info. Pour plus d'informations, consultez la section Section Basic Info. |
|
3 |
La section des détails du job. Pour plus d'informations, consultez la section Section des détails du job. |
Titre et fonctionnalités
Cette section affiche l'ID et le nom du job. L'ID identifie de manière unique un job MaxCompute et est généré lors de sa soumission. Le nom du job s'affiche uniquement si le job a été soumis via un SDK. Cliquez sur les icônes situées à droite de cette section pour effectuer des opérations.
|
Icône |
Description |
|
|
Ouvre le fichier Logview_detail.txt contenant les détails du job. Le fichier est enregistré sur votre ordinateur. |
|
|
Revenez à la page LogView V1.0. |
|
|
Enregistrez les détails du job dans un fichier sur votre ordinateur. |
Section Basic Info
Cette section affiche les informations de base d'un job.
|
Paramètre |
Description |
|
Service MaxCompute |
L'endpoint MaxCompute sur lequel le job s'exécute. Pour plus d'informations sur les endpoints, consultez Endpoints. |
|
Projet |
Le nom du projet MaxCompute auquel appartient le job. |
|
Compte cloud |
Le compte Alibaba Cloud utilisé pour soumettre le job. |
|
Type |
Le type du job. Valeurs possibles : SQL, SQLRT, LOT, XLib, CUPID, AlgoTask et Graph. |
|
Statut |
Le statut du job. Valeurs possibles :
|
|
Heure de début |
L'heure à laquelle le job a été soumis. |
|
Heure de fin |
L'heure à laquelle le job est terminé. |
|
Latence |
La durée d'exécution du job. |
|
Progression |
La progression du job. |
|
Priorité |
La priorité du job. |
|
File d'attente |
La position du job dans la file d'attente du groupe de quotas de ressources. |
Section des détails du job
Dans la section des détails du job, vous pouvez consulter les détails d'un job. Cette section comprend les onglets suivants :
Détails du job
-
Graphique de progression
La partie supérieure de l'onglet Job Details affiche le graphique de progression. Ce graphique visualise les dépendances des sous-tâches sur trois couches : job Fuxi, tâche Fuxi et opérateur. Il fournit également des outils de dépannage.
N°
Description
1
Le fil d'Ariane permettant de basculer entre les jobs Fuxi. JOB:_SQL_0_0_0_job_0 correspond au nom d'un job Fuxi.
2
L'outil de dépannage. Utilisez Progress Chart, Input Heat Chart, Output Heat Chart, TaskTime Heart Chart et InstanceTime Heart Chart pour le dépannage.
3
Cliquez sur l'icône
pour actualiser le statut du job et sur l'icône
pour zoomer ou dézoomer sur le graphique de progression. Cliquez également sur l'icône
pour obtenir la documentation MaxCompute Studio et sur l'icône
pour revenir au niveau supérieur du job. 4
L'outil de zoom.
5
La tâche Fuxi. Un job MaxCompute se compose d'un ou plusieurs jobs Fuxi. Chaque job Fuxi comprend une ou plusieurs tâches Fuxi. Chaque tâche Fuxi contient une ou plusieurs instances Fuxi. Si le volume de données d'entrée augmente, MaxCompute lance davantage de nœuds pour chaque tâche afin de traiter les données. Un nœud équivaut à une instance Fuxi. Par exemple, un job MapReduce simple génère deux tâches Fuxi : une tâche map (M1) et une tâche reduce (R2). Si une instruction SQL est complexe, plusieurs tâches Fuxi peuvent être générées.
Consultez le nom de chaque tâche Fuxi sur la page d'exécution. Par exemple, M1 indique une tâche map. Les champs 3 et 9 dans R4_3_9 signifient que la tâche map ne peut s'exécuter qu'une fois M3 et C9_3 terminés. De même, M2_4_9_10_16 indique que la tâche M2 ne peut s'exécuter qu'après l'achèvement de R4_3_9, C9_3, R10_1_16 et C16_1. R/W indique le nombre de lignes lues et écrites par la tâche.
Cliquez ou faites un clic droit sur une tâche pour afficher les dépendances des opérateurs et les graphiques des opérateurs de la tâche.
Consultez rapidement les tables d'entrée et de sortie.
6
La lecture de la tâche Fuxi. Cliquez sur l'icône
pour démarrer ou arrêter la lecture. Vous pouvez également faire glisser la barre de progression. L'heure de début et l'heure de fin s'affichent de part et d'autre de la barre de progression. Le temps de lecture s'affiche au centre. 7
La miniature.
RemarqueLa fonctionnalité de lecture ne s'applique pas aux tâches Fuxi dont le statut est Running.
Un job AlgoTask, tel qu'un job Platform for AI (PAI), ne contient qu'une seule tâche Fuxi. Par conséquent, aucun graphique de progression n'est fourni pour ces jobs.
Pour les jobs non SQL, seuls les jobs Fuxi et les tâches Fuxi s'affichent.
S'il n'existe qu'un seul job Fuxi, le graphique de progression affiche les dépendances entre les tâches Fuxi. S'il existe plusieurs jobs Fuxi, le graphique de progression affiche les dépendances entre les jobs Fuxi.
-
Statut du job
La partie inférieure de l'onglet Job Details affiche les informations détaillées d'exécution du job.
N°
Description
1
L'onglet Fuxi Jobs. Basculez entre les jobs Fuxi depuis cet onglet.
2
Les détails des tâches Fuxi du job Fuxi. Cliquez sur une tâche Fuxi pour afficher les informations relatives à l'instance Fuxi de cette tâche. Par défaut, les informations concernant l'instance Fuxi de la première tâche Fuxi du premier job Fuxi s'affichent.
Pour les jobs AlgoTask et CUPID, cette zone propose une colonne Sensor. Cliquez sur le capteur (Sensor) d'une tâche Fuxi pour afficher l'utilisation du CPU et la consommation de mémoire de ses instances Fuxi. Les jobs Fuxi sont classés comme suit :
-
M : Un job dont l'ID commence par M est un job d'analyse de données.
-
R : Un job dont l'ID commence par R est un job Reduce.
-
J : Un job dont l'ID commence par J est un job JOIN.
-
C : Un job dont l'ID commence par C indique un nœud virtuel. Ce nœud n'implique aucun calcul et sert uniquement à la sélection de branches.
Remarque-
Fuxi Sensor est disponible dans les régions Chine (Chengdu), Chine (Shenzhen), Chine (Shanghai), Chine (Hangzhou), Chine (Zhangjiakou) et Chine (Pékin).
-
Une tâche Fuxi peut être relancée si elle est
interrupted. Dans ce cas, la colonne Progression affiche uniquement la progression de la tentative de relance. Par conséquent, le job global peut réussir tandis que la progression de cette tâche Fuxi n'atteint pas100 %. Ce comportement est attendu.
3
LogView regroupe les instances en fonction de leur statut. Cliquez sur la valeur située à côté de Failed pour interroger les informations sur les nœuds défaillants.
4
Instances Fuxi.
-
Un exemple d'ID est
M1#0_0. Le premier0représente l'ID auto-incrémenté de l'instance Fuxi. Le second0correspond au nombre de tentatives de relance de la tâche. Une valeur de0indique que la tâche n'a pas été relancée. Une valeur de n signifie que la tâche a été relancée n fois. -
StdOut et StdErr. Affichez les messages de sortie, les messages d'erreur et les informations que vous souhaitez voir. Vous pouvez également télécharger ces informations.
-
Debug. Déboguez et résolvez les erreurs.
-
Limites du nombre d'instances Fuxi.
Le nombre d'instances Fuxi est limité à 1 lorsque l'instruction SQL que vous utilisez remplit l'une des conditions suivantes :
-
Elle contient une clause
limit. -
Elle utilise une fonction fenêtre sans clause
partition by key. -
Elle utilise une fonction d'agrégation sans clause
group by key. -
Aucune clé de jointure équivalente n'est incluse dans l'instruction SQL utilisée pour effectuer des opérations JOIN.
-
Elle contient une clause
order by.
-
-
Fuxi Sensor
Fuxi Sensor offre une vue multidimensionnelle des ressources d'une instance Fuxi, en affichant son utilisation réelle du CPU et sa consommation de mémoire. Cet outil s'avère précieux pour l'analyse des causes profondes et l'analyse des performances des jobs, notamment dans les scénarios suivants :
Analysez l'utilisation réelle de la mémoire lorsqu'une erreur d'épuisement de la mémoire (OOM) survient.
-
Consultez l'utilisation des ressources suivante d'une instance Fuxi pour un job d'apprentissage automatique :
-
Utilisation du CPU
Le graphique cpu_usage comporte deux lignes. L'une indique le nombre de CPU demandés (cpu_plan) et l'autre le nombre de CPU utilisés (cpu_usage). Sur l'axe des ordonnées, 400 correspond à quatre processeurs. Vous ne pouvez ajuster le nombre de CPU demandés qu'en modifiant le nombre de processeurs. Il est impossible d'ajuster le nombre de CPU utilisables.

-
Utilisation de la mémoire
Le graphique mem_usage comporte deux lignes. L'une indique le nombre de ressources mémoire demandées (mem_plan) et l'autre le nombre de ressources mémoire utilisées (mem_usage).
L'utilisation de la mémoire (mem_usage) se compose de deux parties : Resident Set Size (RSS) et PageCache. RSS correspond à la mémoire allouée après une erreur de page suite à un appel Malloc (hors mappage de fichiers). Cette mémoire ne peut pas être récupérée en cas de pénurie. PageCache désigne la mémoire utilisée par le noyau pour mettre en cache les fichiers, par exemple lors de la lecture et de l'écriture de fichiers journaux. PageCache peut généralement être récupéré en cas de pénurie de mémoire.
Détails de la mémoire

Utilisation RSS

Utilisation PageCache

-
Result
Le contenu de l'onglet Result varie selon le statut du job :
-
Si le job s'exécute avec succès, le résultat du job s'affiche.
-
Utilisez la commande suivante pour désactiver l'affichage du résultat du job.
setproject odps.forbid.fetch.result.by.bearertoken=true; -
Configurez le paramètre odps.sql.select.output.format pour spécifier le format d'affichage du résultat.
-- To display the result in the CSV format, set this parameter to csv. set odps.sql.select.output.format=csv; -- To display the result in the text format, set this parameter to HumanReadable. set odps.sql.select.output.format=HumanReadable;
-
Si l'exécution du job échoue, la cause de l'échec s'affiche.
Source XML
-
XML
Les niveaux de job et les informations liées aux tâches s'affichent au format XML dans cet onglet.
-
Settings
Les paramètres de la tâche actuelle s'affichent dans cet onglet.
-
Command
Les configurations de flag de la tâche actuelle s'affichent dans cet onglet.
SQL script
Le script SQL de la tâche actuelle s'affiche dans cet onglet.
History
L'historique de la tâche actuelle s'affiche dans cet onglet.
SubStatusHistory
Le statut de la tâche actuelle s'affiche dans cet onglet.
Cliquez sur l'onglet SubStatusHistory pour consulter l'historique des sous-statuts de chaque étape d'exécution de la tâche. Le tableau contient les colonnes suivantes : Code (code numérique du statut, tel que 1010, 1020 et 1030), Description (description du statut), StartTime (heure de début), Latency (durée) et TimeLine (barre de progression chronologique).
|
Message du code de statut |
Description |
|
Waiting for scheduling |
Le job est soumis et attend d'être planifié par le framework MaxCompute. Généralement, le temps d'attente est court. |
|
Waiting for cluster resource |
Le job attend des ressources car le framework MaxCompute détecte que les ressources du cluster de calcul Fuxi sont insuffisantes. |
|
Waiting for concurrent task slot |
Le throttling au niveau du projet est déclenché. Vous pouvez configurer le nombre de tâches SQL pouvant être soumises simultanément pour un projet. |
|
Waiting for data replication |
Le job attend la réplication des données. |
|
Waiting for execution slot |
Le throttling au niveau du système est déclenché. |
|
Waiting for cleaning up of previous task attempt |
Le job attend la fin de l'opération de nettoyage des tâches historiques. |
|
Waiting for execution |
Le job attend d'être distribué depuis la file d'attente du processus parent vers un processus enfant. Généralement, le temps d'attente est court. |
|
Preparing for execution |
Le job va être distribué à un processus enfant. Si le processus enfant présente une anomalie, le temps de préparation peut être long. |
|
Task is executing |
Le job est en cours de traitement dans le framework MaxCompute. |
|
SQLTask is initializing |
La tâche SQL est en cours d'initialisation. |
|
SQLTask is compiling query |
La tâche SQL est en cours de compilation. |
|
SQLTask is optimizing query |
La tâche SQL optimise les requêtes. Si le plan d'exécution est complexe, le temps d'optimisation est légèrement long. Si le temps d'optimisation est excessivement long, une erreur peut survenir. |
|
SQLTask is splitting data sources |
La tâche SQL fractionne les sources de données pour optimisation. |
|
SQLTask is generating execution plan |
La tâche SQL génère un plan d'exécution. Si ce processus prend beaucoup de temps, cela peut signifier que les données sont lues depuis un nombre excessif de partitions ou de petits fichiers. |
|
SQLTask is submitting execution plan |
La tâche SQL soumet le plan d'exécution. |
|
Job has been submitted |
Le job est soumis au cluster de calcul. |
|
Offline Job Waiting for running |
Avant la soumission du job au cluster de calcul Fuxi, le framework MaxCompute identifie que des ressources de calcul sont disponibles pour le job. Toutefois, après la soumission, le framework MaxCompute constate qu'aucune ressource de calcul n'est disponible dans le groupe de quotas. Par conséquent, le job attend des ressources de calcul. Ce code de statut n'apparaît qu'une seule fois et ne réapparaît plus, même si aucune ressource de calcul n'est disponible pour le job. |
|
Offline Job is running |
Le job Fuxi est en cours d'exécution. Si les ressources deviennent indisponibles pendant l'exécution, le job reste dans cet état. Par exemple, si un job de priorité supérieure accapare les ressources, les instances Fuxi concernées ne peuvent pas s'exécuter et leur statut passe à |
|
Offline Job is failed |
L'exécution du job Fuxi a échoué. |
|
Offline Job is succeed |
Le job Fuxi a réussi. |
|
SQLTask is updating meta information |
La tâche SQL met à jour le statut des informations de métadonnées et génère des partitions dynamiques. Ce processus peut prendre du temps. |
|
SQLTask is finishing |
La tâche SQL est terminée. |
|
Online Job is cancelled by fuxi |
Le job en |
|
Task rerun |
Le job est en cours de relance. Cela peut se produire si un job en |
|
Online Job Waiting for running |
Le job en |
|
Online Job is running |
Le job en |
|
Online Job is failed |
Le job en |
|
Online Job is succeed |
Le job en |
|
Online Job is cancelled by fuxi |
Le job en |
|
Task key-path executing finished |
Le chemin critique du job est terminé, mais des informations telles que DetailStatus ne sont pas encore générées. |
|
Task key-path is finished |
Le chemin critique du job est terminé. |
|
Instance key-path is finished |
Le chemin critique de l'instance est terminé. |
|
Task execution is finished |
Le job est terminé et DetailStatus est généré. |
|
Instance execution is finished |
Le job est terminé. |
|
Execution failed |
L'exécution du job a échoué. |