Concevoir une analyse en temps réel

Dans cette leçon, vous créerez une analyse en temps réel sur des données diffusées en continu dans ArcGIS Velocity. Cette leçon approfondit la leçon Créer un flux, au cours de laquelle vous avez créé un nouveau flux pour collecter des données AIS. Dans cette leçon, vous allez configurer une analyse temps réel pour enrichir les données AIS en continu en ajoutant le district de la Garde côtière des États-Unis dans lequel se trouve chaque navire.

Vous apprendrez à créer une analyse en temps réel, à ajouter et configurer des outils en temps réel, à ajouter des sorties qui diffusent les données et à stocker des entités dans une couche d’entités.

Ce cours s’adresse aux débutants. Vous devez disposer d’un compte ArcGIS Online avec accès à ArcGIS Velocity. La durée estimée de cette leçon est de 30 minutes.

Créer une nouvelle analyse en temps réel

Pour commencer, vous allez créer une analyse en temps réel sur le flux AIS que vous avez créé au cours de la leçon Créer un flux.

  1. Dans un navigateur Web, ouvrez l'application ArcGIS Velocity et connectez-vous avec vos identifiants de connexion ArcGIS Online.

    Pour une expérience optimale, utilisez Google Chrome ou Mozilla Firefox.

    Remarque :

    En cas de problème lors de la connexion, adressez-vous à votre administrateur ArcGIS Online. Vous devrez peut-être disposer d’un rôle ArcGIS Online doté de privilèges pour utiliser ArcGIS Velocity.

  2. Dans le menu principal de gauche, cliquez sur Real-Time (Temps réel), sous ANALYTICS (ANALYSES) pour accéder à la page Real-Time Analytics (Analyses en temps réel).

    Page Analyses en temps réel

    Vous pouvez y voir et gérer les analyses temps réel existantes et en créer de nouvelles.

  3. Cliquez sur Create real-time analytic (Créer une analyse temps réel) pour lancer l’assistant de configuration d’analyse.
  4. Dans la page Create a new real-time analytic (Créer une nouvelle analyse en temps réel), cliquez sur Existing feed (Flux existant).

    Créer une analyse en temps réel à l’aide d’un flux existant.

  5. Dans la fenêtre Select existing feed (Sélectionner le flux existant), sélectionnez ship_positions_simulation et cliquez sur Confirm (Confirmer).

    Sélectionner un flux existant pour effectuer des analyses en temps réel.

    Remarque :

    Le flux ship_positions_simulation doit être disponible si vous avez terminé la leçon Créer un flux. Dans le cas contraire, terminez cette leçon avant de continuer.

    L’éditeur d’analyse en temps réel s’ouvre, permettant de configurer des outils et des sorties supplémentaires. Par défaut, l’éditeur affiche le flux sélectionné et tous les éléments de traitement dans une mise en page linéaire séquentielle.

    Éditeur d’analyse en temps réel

Créer l’analyse

Bien que l’analyse contienne uniquement le flux en entrée à ce stade, vous allez le créer pour pouvoir y retourner plus tard, si nécessaire.

  1. Dans la page New Real-Time Analytic (Nouvelle analyse temps réel), cliquez sur Create analytic (Créer une analyse) pour créer l'analyse temps réel.
  2. Dans la fenêtre Create analytic (Créer une analyse), configurez le Title (Titre) et le Summary (Résumé) comme suit.
    1. Pour Title (Titre), saisissez AIS Real Time Processing (Traitement en temps réel AIS).
    2. Pour Summary (Résumé), saisissez Filtrer et modifier les données AIS entrantes avec sortie en continu et stockage d’entités).
  3. Cliquez sur Create analytic (Créer une analyse) pour créer l'analyse.

    Créer l’analyse

    Une fois l'analyse créée, plusieurs nouvelles options sont disponibles dans l’éditeur d’analyse.

    Éditeur d’analyse après création de l’analyse temps réel

Ajouter et configurer un outil d’analyse

Vous allez maintenant ajouter des outils d’analyse à l’analyse AIS Real Time Processing (Traitement en temps réel AIS) afin d’appliquer une analyse en temps réel au flux de données AIS. Velocity vous permet de créer une séquence d’éléments analytiques successifs en chaîne des entrées aux sorties.

Vous utiliserez l’outil Join Features (Entités jointes) pour ajouter aux données AIS entrantes le nom du district de la Garde côtière des États-Unis dans lequel se trouve chaque navire. Vous réaliserez une jointure spatiale entre les entités navires et la couche U.S. Coast Guard District.

  1. Cliquez sur Toggle to model view (Basculer sur la vue du modèle) pour afficher la vue du modèle dans l’éditeur d’analyse.

    Vue du modèle dans l’éditeur d’analyse en temps réel

    L’éditeur d’analyse passe de la vue du processus à la vue du modèle. La vue du modèle affiche un canevas graphique dans lequel vous pouvez configurer une analyse, comme dans ModelBuilder dans ArcGIS Desktop ou l’éditeur de service GeoEvent dans ArcGIS GeoEvent Server.

  2. Vous allez maintenant ajouter l’outil Join Features (Joindre des entités) à l’analyse AIS Real Time Processing (Traitement en temps réel AIS) et la connecter au flux ship_positions_simulation.
    1. Cliquez sur le dossier Summarize Data (Synthétiser les données) et sélectionnez Join Features (Entités jointes) pour ajouter l’outil au canevas.
    2. Cliquez sur l’outil Join Features (Entités jointes), puis faites-le glisser à droite du flux ship_positions_simulation.
    3. Connectez le flux ship_positions_simulation à l’outil Join Features (Entités jointes).

      Outil Join Features (Joindre des entités) connecté au flux

    Ensuite, vous allez ajouter la source d’enrichissement des données, à savoir la couche d’entités U.S. Coast Guard District (District de la garde côtière des États-Unis), et la connecter à l’outil Entités jointes.

  3. Cliquez sur le dossier Sources (Sources), sélectionnez Feature layer (Couche d'entités) et configurez la couche d’entités comme suit :
    1. Cliquez sur le menu déroulant My Content (Mon contenu) et sélectionnez By URL (Par URL).
    2. Dans la zone de texte Layer URL (URL de la couche), entrez https://services2.arcgis.com/FiaPA4ga0iQKduv3/arcgis/rest/services/US_Coast_Guard_Districts_new/FeatureServer.
    3. Sélectionnez la sous-couche USCG_Districts (0) et cliquez sur Next (Suivant).

      Configuration de la couche d’entités utilisée pour l’enrichissement comme source de données.

    4. Acceptez les valeurs par défaut à l’étape Filter Data (Filtrer des données), puis cliquez sur Next (Suivant).
    5. À l’étape Confirm Schema (Confirmer la structure), acceptez la structure échantillonnée et cliquez sur Next (Suivant).

      Velocity va échantillonner les données et générer une structure de départ.

    6. À l’étape Identify Key Fields (Identifier les champs clés), sous Tracking (Suivi), sélectionnez Data does not have a Track ID (Les données ne comportent pas d’ID de trace).

      Cette étape de l’assistant de configuration permet de définir la construction de la géométrie, la date et d’heure, et les informations de suivi. Etant donné que la source de données est une couche d’entités ArcGIS, les données de géométrie et de date et d’heure sont configurées automatiquement.

    7. Cliquez sur Complete (Terminé) pour créer la source de données.

    Une fois la nouvelle couche d’entités source ajoutée à la zone d’affichage, vous allez la connecter aux autres composants.

  4. Faites glisser la source USCG_Districts sous le flux ship_positions_simulation, puis connectez-la à l’outil Join Features (Entités jointes).

    Flux et source de données configurés dans une analyse temps réel

    Deux entrées sont désormais connectées à l’outil Join Features (Joindre des entités) : le flux des positions de navires et la source de données de la couche d’entités U.S. Coast Guard District. Vous allez à présent configurer l’outil Entités jointes de sorte qu’il effectue une jointure spatiale et qu’il ajoute le nom des districts de la Garde côtière des États-Unis aux données d’événement en entrée.

  5. Double-cliquez sur l’outil Entités jointes pour ouvrir ses propriétés et configurez l’outil comme suit :
    1. Pour Join operation (Opérations de jointure), cliquez sur One-to-one (Un vers un).
    2. Pour Retain all features (Conserver toutes les entités), cliquez sur Only retain features that are joined (Conserver uniquement les entités qui sont jointes).
    3. Pour Relationship (Relation), cochez la case Spatial (Spatial) et sélectionnez Intersects (Intersections) dans le menu déroulant du type de relation spatiale.

      Outil Join Features (Joindre des entités) avec options de relations spatiales configurées

      Dans cette leçon, vous détectez les intersections entre tout navire et un district de la Garde côtière des États-Unis et ajoutez, ou joignez, ces informations contextuelles aux données des navires afin de pouvoir les utiliser pour obtenir une meilleure connaissance de la situation ou une analyse plus approfondie. Ensuite, vous allez configurer les paramètres des champs de récapitulation.

    4. Pour Attribute (Attribut), sélectionnez DistrictName.
    5. Pour Statistic (Statistique), sélectionnez Any (Tout).
    6. Dans Output field name (Nom de champ en sortie), remplacez DistrictName_Any par DistrictName.
    7. Cliquez sur Add (Ajouter) pour ajouter l’opération de jointure.
    8. Laissez l'option Change geometry of target feature to geometry of join feature (Remplacer la géométrie de l’entité cible par la géométrie de l’entité de jointure) définie sur No (Non).
    9. Cliquez sur Apply (Appliquer) pour appliquer les mises à jour.

      Outil Join Features (Joindre les entités) avec champs de récapitulation configurés

  6. Dans l’éditeur d’analyse, cliquez sur Save (Enregistrer) pour enregistrer l’analyse.

Configurer une couche d’entités en sortie

Après avoir ajouté les éléments de traitement en temps réel requis et une source de données d’enrichissement, vous allez ajouter deux sorties pour stocker et visualiser les données. Pour commencer, vous allez ajouter et configurer une sortie pour stocker les données dans une nouvelle couche d’entités. Dans la section suivante, vous ajouterez une autre sortie pour envoyer les données vers une couche en mode continu pour les visualiser dans une carte Web.

  1. Cliquez sur le dossier Outputs (Sorties), sélectionnez Feature Layer (new) (Couche d'entités (nouvelle)) et configurez la nouvelle couche d’entités en sortie comme suit :
    1. Pour Data storage method (Méthode de stockage de données), sélectionnez Keep latest feature (Conserver la dernière entité).

      Ceci conserve uniquement la dernière observation pour chaque trace (en l’occurrence, chaque navire). Les observations suivantes remplaceront les observations existantes pour chaque trace de la couche d’entités en sortie.

      Remarque :

      L’option Add new features (Ajouter de nouvelles entités) conserve toutes les données entrantes, et pas seulement les dernières entités reçues.

    2. Pour Each time the analytic runs (À chaque exécution de l’analyse), sélectionnez Replace existing features and schema (Remplacer les entités et la structure existantes).

      Paramètres en sortie de Feature Layer (new) (Couche d'entités (nouvelle)) configurés

      Avec cette configuration, chaque fois que l’analyse est lancée (ou relancée), tous les enregistrements de la couche d’entités en sortie sont supprimés et la structure de la couche d’entités en sortie est générée de nouveau. Cette fonction est utile lorsque vous développez et testez votre analyse temps réel et que vous ajoutez, supprimez ou modifiez des outils entre chaque exécution.

      Remarque :

      Dans un environnement de production, vous pouvez modifier la couche d’entités en sortie et sélectionner Keep existing features and schema (Conserver les entités et la structure existantes) pour que les données existantes soient conservées en cas de redémarrage de l’analyse.

    3. Cliquez sur Next (Suivant).
    4. À l'étape Save (Enregistrer), pour Feature layer name (Nom de la couche d'entités), saisissez Ships_Inside_USCG_Districts.
    5. Pour Feature layer summary (optional) [Résumé de la couche d’entités (facultatif)], saisissez Ships inside US Coast Guard Districts.

      Étape Save (Enregistrer) de Feature Layer (new) (Couche d'entités (nouvelle))

    6. Cliquez sur Complete (Terminé) pour enregistrer la nouvelle couche d’entités en sortie.

    La nouvelle couche d’entités en sortie, Ships_Inside_USCG_Districts, est ajoutée à l’éditeur d’analyse.

  2. Connectez l’outil Join Features (Entités jointes) à la nouvelle couche d’entités en sortie Ships_Inside_USCG_Districts.

    Outil Join Features (Joindre les entités) connecté à la couche d’entités en sortie

  3. Cliquez sur Save (Enregistrer) pour enregistrer l’analyse temps réel.

Configurer une couche en mode continu en sortie

La couche d’entités en sortie étant maintenant créée, vous allez à présent ajouter une seconde sortie pour envoyer les entités vers une couche en mode continu à visualiser dans une carte Web.

  1. Cliquez sur le dossier Outputs (Sorties) et sélectionnez Stream layer (Couche en mode continu) et configurez la couche en mode continu en sortie comme suit :
    1. Cliquez sur Next (Suivant) pour accepter les valeurs par défaut à l’étape Stream Layer Configuration (Configuration de la couche en mode continu).

      Les options Also publish a feature layer which keeps the latest observation for each Track ID (Publier également une couche d’entités qui conserve la dernière observation pour chaque ID de trace) et Select a related feature layer to provide geometry when stream layer is drawn in a map (Sélectionner une couche d’entités associée pour fournir la géométrie lorsqu’une couche en mode continu est dessinée sur une carte) sont facultatives. Lorsque vous publiez une couche d'entités, vous pouvez publier une couche d’entités distinctes contenant uniquement les dernières observations. Cela est utile lorsque vous voulez symboliser la position actuelle d’une ressource (dans le cas présent un navire) différemment sur une carte Web. Vous pouvez choisir une couche d’entités associée qui peut être utilisée pour ajouter des champs supplémentaires à la couche en mode continu en sortie.

    2. Pour Stream layer name (Nom de la couche en mode continu), saisissez Ships_Inside_USCG_Districts_stream.
    3. Pour Stream layer summary (optional) [Résumé de la couche en mode continu (facultatif)], saisissez Ships inside US Coast Guard Districts stream.

      Configuration de la couche en mode continu en sortie

  2. Cliquez sur Complete (Terminer) pour créer la couche en mode continu en sortie.

    La nouvelle couche en mode continu en sortie, Ships_Inside_USCG_Districts_stream, est ajoutée à l’éditeur d’analyse.

  3. Connectez l’outil Join Features (Entités jointes) à la couche en mode continu en sortie Ships_Inside_USCG_Districts_stream.

    Outil Join Features (Joindre les entités) connecté à la nouvelle couche en mode continu en sortie

  4. Cliquez sur Save (Enregistrer) pour enregistrer l’analyse temps réel.

Démarrer l’analyse en temps réel

L'analyse en temps réel inclut maintenant les flux, outils et sorties requis et peut maintenant commencer. Lors de son exécution, l’analyse reçoit les données simulées des navires, y joint le nom du district de la Garde côtière des États-Unis où se trouve actuellement chaque navire, puis écrit les données d’événement dans les couches d’entités et couches en mode continu en sortie.

  1. En haut à droite de l’éditeur d’analyse, cliquez sur Start (Démarrer).

    Comme les flux, les analyses en temps réel sont des tâches qui durent longtemps, et dont l’exécution se poursuit jusqu’à ce qu’elles soient arrêtées.

    L’intitulé du bouton Start (Démarrer) devient Stop Initialization (Arrêter l’initialisation), puis Stop (Arrêter). Cela indique que l’analyse temps réel est maintenant en cours d’exécution.

  2. N'oubliez pas que le statut d'une analyse peut être surveillé depuis la page Real-Time Analytics (Analyses temps réel) dans Velocity.

Afficher les mesures de l’analyse temps réel

Vous pouvez consulter les mesures liées à l’exécution de l’analyse temps réel dans les vues de processus et de modèle dans Velocity. Ces mesures indiquent le taux moyen d’événements pour chaque élément et représentent une moyenne du taux pour chaque élément pendant les cinq dernières minutes d’exécution. En outre, lorsqu’une analyse en temps réel s’exécute, les mesures représentent l’utilisation de la capacité de calcul par l’analyse. Pour plus d’informations, reportez-vous à la rubrique Mesures d’analyse temps réel.

  1. Dans AIS Real Time Processing (Traitement en temps réel AIS), activez Metrics (Mesures) afin d'afficher les mesures pour chaque élément de l’analyse.

    Activer les mesures de l’analyse temps réel

  2. Révisez les mesures pour chaque élément de l’analyse en temps réel AIS Real Time Processing (Traitement en temps réel AIS). Vous verrez les événements traités par seconde pour chaque élément, le nombre total d’observations en entrée et en sortie, ainsi que l’utilisation de la capacité de calcul.

    Mesures de l’analyse temps réel

Examiner la couche en sortie

Maintenant que l’analyse temps réel s’exécute et que les couches d’entités et en mode continu en sortie sont disponibles, vous allez ajouter ces couches à une carte Web directement à partir de l’analyse.

  1. Dans le menu principal, cliquez sur Feeds (Flux) sous INPUT (ENTRÉE) pour accéder à la page Feeds (Flux).
  2. Cliquez sur Start (Démarrer) pour lancer le flux ship_positions_simulation, si ce n’est pas déjà fait.
  3. Dans le menu principal, cliquez sur Real-Time (Temps réel) sous ANALYTICS (ANALYSES) pour accéder à la page Real-Time Analytics (Analyses temps réel).
  4. Cliquez sur Start (Démarrer) pour lancer l’analyse temps réel AIS Real Time Processing (Traitement en temps réel AIS), si ce n’est pas déjà fait.
  5. Une fois que l’analyse temps réel AIS Real Time Processing (Traitement en temps réel AIS) est en cours d'exécution, cliquez sur l’icône représentant un crayon pour modifier l'analyse.
  6. Cliquez avec le bouton droit de la souris sur la couche d’entités en sortie Ships_Inside_USCG-Districts et sélectionnez Open in Map Viewer (Ouvrir dans Map Viewer).

    Ouvrir une couche d’entités dans Map Viewer

    Un nouvel onglet s'ouvre vers Map Viewer dans ArcGIS Online.

  7. Changez le fond de carte en Dark Gray Canvas (Nuances de gris foncé).

    Couche d’entités dans une carte Web

  8. Cliquez éventuellement sur le bouton Add (Ajouter) et ajoutez la couche d’entités U.S. Coast Guard Districts à l’aide de l'URL https://services2.arcgis.com/FiaPA4ga0iQKduv3/arcgis/rest/services/US_Coast_Guard_Districts_new/FeatureServer.

    Couche d’entités dans une carte Web avec limites du district de la Garde côtière des États-Unis

  9. Cliquez sur l’une des entités de position de navire pour afficher ses attributs dans une fenêtre contextuelle. Chaque observation a été enrichie avec le nom du district de la Garde côtière des États-Unis (DistrictName) dans lequel le navire se trouve actuellement.

    Fenêtre contextuelle contenant des informations sur le navire sélectionné

Etapes suivantes

Vous avez créé une analyse en temps réel à l’aide de ArcGIS Velocity et affiché les entités en sortie dans une carte Web. Vous avez ensuite ajouté l’outil Join Features (Entités jointes) pour effectuer un enrichissement spatial et associer des données contextuelles aux données d’observation entrantes.

Découvrez d'autres contenus en continuant d'utiliser Velocity, notamment le cours express Concevoir une analyse Big Data et, si vous souhaitez utiliser les Expressions Arcade, explorez la rubrique Expressions Arcade.