Tous les produits
Search
Centre de documentation

Realtime Compute for Apache Flink:Profilage des opérateurs (aperçu public)

Dernière mise à jour :Aug 09, 2026

La fonctionnalité de profilage des opérateurs vous permet de consulter les résultats intermédiaires sans modifier votre déploiement. Elle simplifie le dépannage des problèmes d'exactitude des données, améliore l'efficacité et la continuité des activités, et réduit les temps d'arrêt des services critiques en temps réel. Cette rubrique décrit comment utiliser le profilage des opérateurs.

Contexte

Lors de la gestion des déploiements Flink, vous pouvez rencontrer des résultats inattendus, un problème courant appelé problème d'exactitude des données. Les causes de ces problèmes sont complexes et difficiles à identifier. Une méthode de dépannage courante consiste à décomposer logiquement le déploiement SQL et à utiliser le connecteur Print pour afficher les résultats de chaque étape. Toutefois, ce processus est chronophage. Vous risquez également de ne pas identifier la cause racine en raison de divergences entre les données de test, les données de production ou l'état du système. Par conséquent, la résolution de ces problèmes prend souvent beaucoup de temps et nécessite plusieurs cycles d'arrêt et de redémarrage. Realtime Compute for Apache Flink propose la fonctionnalité de profilage des opérateurs pour répondre à ces défis. Cette fonctionnalité vous permet d'inspecter les entrées et les sorties des opérateurs sélectionnés sans modifier le déploiement, ce qui vous aide à résoudre plus efficacement les problèmes d'exactitude des données.

Limites

  • Cette fonctionnalité prend uniquement en charge les déploiements SQL en cours d'exécution.

  • Seuls les déploiements utilisant Ververica Runtime (VVR) 8.0.4 ou une version ultérieure sont pris en charge.

  • Les déploiements qui utilisent les instructions CREATE TABLE AS ... (CTAS) ou CREATE DATABASE AS ... (CDAS) ne sont pas pris en charge.

  • Les déploiements dans un cluster de session ne sont pas pris en charge.

  • Vous ne pouvez pas démarrer une nouvelle session de profilage tant que la session actuelle n'est pas arrêtée.

Procédure

  1. Connectez-vous à la console Realtime Compute for Apache Flink et cliquez sur Console dans la colonne Actions de l'espace de travail cible.

  2. Dans le volet de navigation de gauche, choisissez O&M > Deployments.

  3. Cliquez sur le nom du déploiement cible, puis cliquez sur l'onglet Status.

  4. Activez le profilage des opérateurs.

    1. Activez l'interrupteur Operators Observing.

      La section Operators Observing s'affiche en bas de la page. Elle présente l'Observing status (par exemple, « Sampling complete ») ainsi qu'une liste d'opérateurs. La liste inclut les colonnes Name, Status, Bytes received, Records received, Bytes sent et Tasks.

    2. Sélectionnez un ou plusieurs opérateurs à profiler.

      Dans la section Operators Observing en bas de la page, activez l'interrupteur Expand. Un message apparaît, tel que 1 operator selected, pour confirmer le nombre d'opérateurs sélectionnés. Définissez la Max sampling duration, puis cliquez sur Start. Les résultats du profilage sont disponibles dans le fichier journal inspect-taskmanager_0.out sur la page TaskManager Log List.

    3. Définissez la durée maximale d'échantillonnage.

      Définissez une durée comprise entre 1 et 30 minutes. Notez que l'échantillonnage peut s'arrêter prématurément si la limite de stockage est atteinte avant la fin de la durée spécifiée.

    4. Cliquez sur Start. L'Observing status Observing status passe à Sampling.

      Remarque

      Vous ne pouvez pas démarrer une nouvelle session de profilage tant que la session actuelle n'est pas arrêtée.

      Une fois le profilage démarré, une notification en bas du panneau indique que vous pouvez consulter les résultats dans un fichier journal, tel que inspect-taskmanager_0.out, sur la page TaskManager Log List. Pour arrêter l'échantillonnage, cliquez sur Stop.

  5. Consultez les résultats du profilage.

    Cliquez sur TaskManager Log List dans l'invite pour accéder à la page des journaux d'exécution et consultez le journal dont le Log name est inspect-taskmanager_0.out.

    Copiez le nom de l'opérateur depuis le DAG dans l'onglet Status, puis recherchez-le dans le fichier journal pour afficher la sortie d'un opérateur spécifique.

    Chaque ligne du journal est un enregistrement JSON contenant des champs tels que op_name (le nom de l'opérateur) et source (la direction des données). Une valeur OUT indique des données sortantes, tandis que IN indique des données entrantes. Par exemple, un opérateur source produit uniquement des sorties, donc ses enregistrements ont une valeur source égale à OUT. Un opérateur sink consomme uniquement des entrées, donc ses enregistrements ont une valeur source égale à IN. Dans le filtre situé dans le coin supérieur droit de la page des journaux, vous pouvez saisir un nom d'opérateur, tel que Sink: blackhole_sink, pour filtrer les journaux. Les noms d'opérateurs correspondants sont mis en surbrillance.

Arrêt du profilage

  • Le profilage s'arrête automatiquement en cas de basculement du JobManager (JM) ou d'un TaskManager (TM).

  • L'échantillonnage s'arrête prématurément si la limite maximale de stockage est atteinte.

  • L'échantillonnage s'arrête lorsque la durée d'échantillonnage configurée est atteinte.

  • Vous pouvez également arrêter manuellement le profilage.

FAQ

Que faire si le profilage des opérateurs ne peut pas être activé ?

Si le paramètre GUC suivant est configuré dans le SQL du déploiement, le profilage des opérateurs ne peut pas être activé :

SET 'sql-gateway.exec-plan.enabled' = 'false';

Supprimez cette configuration, redéployez le job, puis activez le profilage des opérateurs dans l'onglet Status.

Références