---
sourceDocument: Options de la plateforme d’IA ServiceNow de Yokohama
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/fr-FR/yokohama/servicenow-platform

 Release :

    - yokohama

ft:locale :

    - fr-FR

ft:publication_title :

    - Options de la plateforme d’IA ServiceNow de Yokohama

ft:clusterId :

    - platcap

bundleId :

    - platcap

workflow :

    - Platform


---

# Moteur d'identification et réconciliation (IRE)

# Moteur d'identification et réconciliation (IRE) {#ariaid-title1}

* Rversion finale: Yokohama
* 
* Mis à jour 30 janv. 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 12 minutes de lecture

L'IRE est un élément clé sous-jacent d'Identification et rapprochement, fournissant un cadre centralisé pour effectuer des processus d'identification et de rapprochement entre différentes sources de données. IRE utilise des règles d'identification, des règles de rapprochement et des règles de source de données IRE lors du traitement des données entrantes avant d'insérer ces données dans la CMDB.
Les processus IRE contribuent au maintien de l'intégrité des données dans la CMDB.

* IRE empêche les CI en double en identifiant les CI de manière unique.
* IRE réconcilie les attributs de CI en autorisant uniquement les sources de données de référence à écrire dans la CMDB.

{#ire__ul_qcp_tk1_ljb} ServiceNow® Les applications telles que , Horizontal Mappage des services discovery (Détection horizontale) et Pattern discovery (Découverte de schémas) utilisent des API pour appliquer des processus d'identification et de rapprochement. Vous pouvez également appliquer des processus IRE aux données importées par les ensembles d'importation. Lorsque vous utilisez d'autres sources de données, y compris des sources de données tierces, vous pouvez tirer parti des API REST ou IRE scriptables pour effectuer l'identification et le rapprochement.  
Informations supplémentaires :

* À propos des propriétés qui affectent certaines fonctions d'IRE : Voir [Propriétés pour Identification et rapprochement](https://servicenow-prod.fluidtopics.net/dB3XsThgSgmxPVaMeiTo0Q "Utilisez les propriétés d’identification et de rapprochement pour configurer le moteur d’identification et de rapprochement (IRE).").
* À propos de l'utilisation des API IRE : Voir [IdentificationEngine - Scoped](https://www.servicenow.com/docs/access?context=IdentificationEngineScopedAPI&version=yokohama&pubname=yokohama-api-reference&ft:locale=en-US).
* À propos de l'activation du débogage et de la vérification des problèmes avec une charge utile : Consultez [Comment journaliser la charge utile envoyée à IRE et vérifier les problèmes avec la charge utile \[KB0750382\].](https://support.servicenow.com/kb_view_customer.do?sysparm_article=KB0750382)
* À propos des étapes effectuées par IRE pour illustrer le fonctionnement d'IRE, telles que la validation de la charge utile, l'application du rapprochement et la validation des données dans la CMDB : Voir [\[CMDB -- IRE\] Comment fonctionne le moteur d'identification et de rapprochement de la CMDB lors du transfert d'un CI (en tant que charge utile) à createOrUpdateCI() \[KB0750386\].](https://support.servicenow.com/kb_view_customer.do?sysparm_article=KB0750386)
* À propos de l'exécution d'une charge utile via [IRE : Voir \[CMDB IRE\] How to run the CI identification on demand using the payload \[KB0750383\].](https://support.servicenow.com/kb_view_customer.do?sysparm_article=KB0750383)
{#ire__ul_mj5_hjv_dmb}

## Identification du CI {#ire__section_c3q_jv2_mjb}

Le processus d'identification CMDB s'appuie sur des règles d'identification pour identifier de façon unique les CI. Dans la mesure du possible, les CI peuvent également être identifiés de manière unique à l'aide source_namesource_native_key de valeurs fournies dans la sys_object_source_info section de la charge utile et dans la table Source \[sys_object_source\]. Si l'identification est réussie à l'aide de cette méthode, il n'est pas nécessaire d'appliquer des algorithmes d'appariement qui reposent sur des règles d'identification, qui est une méthode d'identification plus lente.  
Un identificateur de CI unique peut être fourni dans l'objet facultatif sys_object_source_info dans la charge utile IRE.

    {
      "items": [
        {
          "className": "cmdb_ci_win_server",
          "values": {
            "name": "SAMLABVM52"
          },
          "sys_object_source_info": {
                "source_native_key": "16777219",
                "source_name": "SCCM",
                "source_feed": "SCCM Computer Identity",
                "source_recency_timestamp": "2019-08-26 13:00:00"
          }
         }
        ]
      }

Les processus d'identification s'appuient sur [la classification des dépendances des CI](https://servicenow-prod.fluidtopics.net/UVIr8fs704x6ORy8RBcsrQ "CMDB les classifications sont des groupes de CI qui partagent des attributs et sont stockés dans leur propre table de classes. Les classifications permettent aux administrateurs de définir une hiérarchie de classe pour les CI au sein du CMDB.") pour identifier les CI de façon unique. Par exemple, pour identifier un CI Tomcat qui est un CI dépendant. En supposant un CI Windows Server (classe indépendante) qui exécute une application Tomcat (classe dépendante). S'appuyer sur le \<\< chemin d'accès du fichier de configuration \>\> pour identifier de manière unique le CI Tomcat n'est pas suffisant, car l'application Tomcat peut s'exécuter sur plusieurs machines avec des chemins identiques. Le moteur d'identification ne peut pas choisir un CI à mettre à jour. Les relations dépendantes forcent le processus d'identification à identifier d'abord l'hôte Windows Server sur lequel l'application Tomcat s'exécute, puis à identifier de manière unique l'application Tomcat elle-même, dans le contexte de l'hôte.

## Identification des éléments de la charge utile {#ire__section_zml_kv1_njb}

IRE génère des clés d'identificateur pour tous les éléments de charge utile d'une charge utile entrante, puis utilise ces clés lorsqu'il s'agit de faire correspondre les charges utiles partielles et entrantes. Une clé d'identificateur est basée sur :

* Combinaison des valeurs et de l'objet source_namesys_object_source_info.source_native_key
* Attributs de critères d'identification.
{#ire__ul_nry_rr1_njb}IRE stocke les clés d'identificateur associées aux éléments partiels dans la table Index de charges utiles partielles IRE \[cmdb_ire_partial_payloads_index\] de CMDB, puis utilise ces clés pour essayer de faire correspondre les clés d'identificateur des charges utiles entrantes.

## Horodatages dans les attributs clés {#ire__section_myr_bg3_yqb}

Pour résoudre les conflits de valeurs d'attribut, IRE utilise des horodatages dans les attributs suivants pour identifier les enregistrements plus anciens que l'enregistrement actuel et qui peuvent donc être ignorés :

* Dernière découverte (last_discovered) et source de découverte (discovery_source) :

  Dernière découverte (last_discovered) est l'horodatage de la dernière découverte du CI. IRE met toujours à jour les CI et discovery_source les attributs pendant le traitement de la charge utile, même lorsqu'aucun autre attribut de CI n'est last_discovered mis à jour. Lorsqu'il last_discovered est fourni dans la charge utile, IRE met à jour le CI avec la valeur fournie uniquement si l'heure last_discovered dans la charge utile est plus récente que celle de la CMDB. S'il last_discovered n'est pas fourni dans la charge utile, IRE met à jour l'attribut last_discovered avec l'horodatage actuel.

  Vous pouvez utiliser les propriétés système [glide.identification_engine.skip_updating_source_last_discovered_if_older](https://servicenow-prod.fluidtopics.net/dB3XsThgSgmxPVaMeiTo0Q "Utilisez les propriétés d’identification et de rapprochement pour configurer le moteur d’identification et de rapprochement (IRE).") et [glide.identification_engine.ire_message_listener_skip_updating_source_last_discovered_to_now](https://servicenow-prod.fluidtopics.net/dB3XsThgSgmxPVaMeiTo0Q "Utilisez les propriétés d’identification et de rapprochement pour configurer le moteur d’identification et de rapprochement (IRE).") pour modifier ce comportement par défaut.
* Première détection (first_discovered) est l'horodatage de la première création du CI.

  * Lors de la première création du CI : si une valeur est fournie dans la charge utile, IRE insère cette valeur. Sinon, IRE insère l'horodatage actuel.
  * Dans les mises à jour suivantes : Si une valeur est fournie, IRE met à jour le CI avec la valeur fournie. Sinon, l'attribut n'est pas mis à jour.
  {#ire__ul_ubm_jj3_yqb}
{#ire__ul_sf3_dg3_yqb}  
Vous pouvez également utiliser les propriétés système suivantes pour modifier la façon dont IRE utilise la valeur d'une source_recency_timestamp charge utile pour mettre à jour l'attribut last_scan dans la table Source \[sys_object_source\] :

* [glide.identification_engine.skip_updating_last_scan_if_older](https://servicenow-prod.fluidtopics.net/dB3XsThgSgmxPVaMeiTo0Q "Utilisez les propriétés d’identification et de rapprochement pour configurer le moteur d’identification et de rapprochement (IRE).")
* [glide.identification_engine.ire_message_listener_skip_updating_last_scan_to_now](https://servicenow-prod.fluidtopics.net/dB3XsThgSgmxPVaMeiTo0Q "Utilisez les propriétés d’identification et de rapprochement pour configurer le moteur d’identification et de rapprochement (IRE).")
{#ire__ul_hl5_ffw_yqb}

## Fonctionnalités IRE améliorées {#ire__section_y12_myk_mjb}

Les API scriptables [CreateOrUpdateCIEnhanced()](https://www.servicenow.com/docs/access?context=IdentificationEngineScopedAPI&version=yokohama&pubname=yokohama-api-reference&ft:locale=en-US) et [identifyCIEnenhanced](https://www.servicenow.com/docs/access?context=c_IdentEngineScriptAPI&version=yokohama&pubname=yokohama-api-reference&ft:locale=en-US) fournissent la fonctionnalité des fonctionnalités IRE améliorées suivantes, qui peuvent être activées ou désactivées selon les besoins :

Charges utiles partielles

:   IRE isole les éléments pour lesquels les sources de données n'ont pas fourni suffisamment d'informations pour identifier le CI de façon unique et par conséquent, le traitement ne peut pas se poursuivre. Certains de ces éléments sont identifiés comme des éléments partiels, qui sont stockés pour un traitement ultérieur potentiel. D'autres éléments sont identifiés comme des éléments incomplets, qui sont stockés uniquement à des fins de journalisation.

    Par exemple : SCCM dispose de plusieurs flux tels qu'un flux de disque et un flux d'ordinateur. Le flux de disque peut contenir des informations complètes sur le disque, mais pas suffisamment d'informations sur le CI de l'ordinateur dont il dépend.

    Option API : partial_payloads qui est activée par défaut. Quand partial_payloads est activé et deduplicate_payloads sont automatiquement activés, partial_commits quel que soit leur paramètre dans les options.

Validations partielles

:   Les erreurs dans certains éléments n'empêchent pas de valider le reste des éléments dans une charge utile. Par conséquent, lorsqu'une charge utile contient des éléments présentant des erreurs, IRE valide toujours les éléments valides restants dans la charge utile. Dans ce cas, certains éléments non validés sont enregistrés en tant que charges utiles partielles et d'autres éléments non validés sont enregistrés en tant que charges utiles incomplètes.

    Option API : partial_commits qui est activée par défaut.

Dédupliquer les éléments de charge utile

:   IRE déduplique les éléments en double dans la charge utile, en fusionnant ces doublons en un seul élément de charge utile pour traitement.

    Option API : deduplicate_payloads qui est activée par défaut.

Générer le résumé

:   IRE génère des résumés dans la charge utile de sortie avec des détails de traitement tels que le nombre de mises à jour par classe.

    Option API : generate_summary qui est désactivée par défaut.

## Éléments partiels {#ire__section_vsm_5v2_mjb}

Un élément de charge utile est défini comme un élément partiel s'il ne contient pas les données nécessaires à une identification unique et s'il présente l'une des erreurs suivantes. L'identification unique exige que l'élément de charge utile comporte la section avec source_name les sys_object_source_info valeurs et source_native_key l'ensemble complet des attributs de critères d'identification spécifiés pour la classe de CI, ou les deux.  
Erreurs IRE pour un élément partiel :

* MISSING_MATCHING_ATTRIBUTES : l'élément n'a pas d'attributs de critère d'identification pour utiliser au moins une entrée d'identificateur pour la correspondance.
* REQUIRED_ATTRIBUTE_EMPTY ----- Impossible de créer un CI, car un attribut requis est manquant.
* MISSING_DEPENDENCY ----- Il manque au CI dépendant une relation de dépendance spécifiée dans la charge utile.
* INSERT_NOT_ALLOWED_FOR_SOURCE : une règle de source de données IRE empêche les sources de données spécifiées de créer des CI de la classe spécifiée.
{#ire__ul_knr_5v2_mjb}

Pour plus de détails sur les messages d'erreur IRE, reportez-vous à .[Messages d'erreur IRE](https://servicenow-prod.fluidtopics.net/HJz8_JGQDc93beVQzRbp5Q "Le moteur Identification et rapprochement (IRE) génère les messages et erreurs suivants. Selon les paramètres, ces messages s’affichent dans le volet Journalisation de l’identification et dans les journaux système.")

Si le traitement échoue parce que les éléments de charge utile sont déterminés comme des éléments partiels, les éléments partiels sont enregistrés en tant que charges utiles partielles dans la table Charges utiles partielles IRE de la CMDB \[cmdb_ire_partial_payloads\] au format JSON pour un traitement éventuel ultérieur. IRE utilise des clés d'identificateur pour tenter de faire correspondre les charges utiles entrantes avec les charges utiles partielles stockées.

Si, par la suite, une source de données envoie les données qui manquaient dans l'élément partiel, IRE fait correspondre la charge utile entrante avec les charges utiles partielles stockées. IRE fusionne ensuite toutes les charges utiles partielles correspondantes avec la charge utile entrante. Pour résoudre les attributs en conflit, IRE utilise soit (lorsque source_native_key et source_name sont identiques), soit source_recency_timestamp des règles de rapprochement statiques spécifiées pour la classe. Il en résulte une charge utile complète et valide qu'IRE traite ensuite pour créer ou mettre à jour les CI respectifs.

Les charges utiles partielles datant de plus de 90 jours sont supprimées de la table Charges utiles partielles \[cmdb_ire_partial_payloads\] IRE de la CMDB.  
Exemple d'une charge utile partielle :

    Disk feed:
    {
      "items": [
        {
          "className": "cmdb_ci_computer",
          "sys_object_source_info": {
                "source_native_key": "Server001",
                "source_name": "SCCM",
                "source_feed": "DISK_FEED",
                "source_recency_timestamp": "2019-08-26 13:00:00"
          }
        },
        {
          "className": "cmdb_ci_disk",
          "values": {
            "name": "disk1"
          }
        }
      ],
      "relations": [{
                  "parent": 0,
                  "child": 1,
                  "type": "Contains::Contained by"}
                  ]
    }

L'élément d'ordinateur dans la charge utile ci-dessus n'a pas d'attributs et IRE ne peut donc pas le traiter. Cependant, source_name et `source_native_key` sont fournis, ce qui en fait un élément partiel. Étant donné que l'élément d'ordinateur est partiel, l'élément de disque qui dépend de l'élément d'ordinateur est également un élément partiel.  
Exemple d'une charge utile ultérieure qui complète la charge utile partielle précédente en fournissant les détails manquants :

    Server/Computer feed:
     {
      "items": [
        {
          "className": "cmdb_ci_linux_server",
          "values": { "name": 'linux001',
                    "ip_address": "100.126.38.19",
                    "mac_address": "DSWER4587" },
          "sys_object_source_info": {
                "source_native_key": "Server001",
                "source_name": "SCCM",
                "source_feed": "COMPUTER_IDENTITY",
                "source_recency_timestamp": "2019-08-26 14:00:00"
          }
        }
      ]
    }

L'ordinateur dans la charge utile partielle et le serveur dans la nouvelle charge utile correspondent parce qu'ils ont des valeurs identiques source_name et source_native_key. Par conséquent, la charge utile partielle et la nouvelle charge utile sont fusionnées, l'opération est validée et la charge utile partielle est supprimée de la table Charges utiles partielles.

Il existe une limite au nombre d'éléments par charge utile partielle, qui est définie par la propriété [glide.identification_engine.partial_payload_items_max_size](https://servicenow-prod.fluidtopics.net/dB3XsThgSgmxPVaMeiTo0Q "Utilisez les propriétés d’identification et de rapprochement pour configurer le moteur d’identification et de rapprochement (IRE).") (1 000 par défaut). Le stockage des relations, des références et des éléments dépendants associés, dans une charge utile partielle, peut entraîner l'atteinte de cette limite, auquel cas la charge utile est fractionnée en plusieurs charges utiles partielles.

Pour plus d'informations sur les charges utiles partielles, consultez [CreateOrUpdateCIEnhanced().](https://www.servicenow.com/docs/access?context=IdentificationEngineScopedAPI&version=yokohama&pubname=yokohama-api-reference&ft:locale=en-US)

## Éléments incomplets {#ire__section_zqn_mv2_mjb}

Un élément de charge utile est défini comme un élément incomplet si :

* Il ne contient pas toutes les données nécessaires à une identification unique
* Il comporte une erreur qui n'est pas associée à un élément partiel

{#ire__ul_fbd_mgx_sjb}L'identification unique n'est pas possible si ni source_name et source_native_key dans l'objet sys_object_source_info , ni l'ensemble des attributs de critères d'identification spécifiés pour la classe CI n'est fourni.

Les éléments incomplets sont enregistrés en tant que charges utiles incomplètes dans la table Charges utiles incomplètes \[cmdb_ire_incomplete_payloads\] de CMDB IRE au format JSON. Les éléments incomplets sont stockés dans le but d'enregistrer les charges utiles avec des erreurs irrécupérables et ne sont jamais traités à nouveau.

## Ajout de relations {#ire__section_a5h_ltf_mjb}

Ajoutez des relations à l'aide d'index ou de l'élément internal_id JSON facultatif.  
Utilisez l'objet relations dans la charge utile pour ajouter ou mettre à jour des relations en faisant référence à internal_ids des éléments. Il est possible de créer des relations à l'aide des éléments principaux et des éléments connexes de la charge utile. Par exemple :

* Relation (index parent, index enfant, type de relation)
* Relation (ID interne parent, ID interne enfant, type de relation)
{#ire__ul_yvc_nfx_njb}

Pour plus d'informations et pour des exemples de code, consultez [CreateOrUpdateCIEnhanced().](https://www.servicenow.com/docs/access?context=IdentificationEngineScopedAPI&version=yokohama&pubname=yokohama-api-reference&ft:locale=en-US)

## Ajout de références entre les éléments de charge utile {#ire__section_psb_4cx_njb}

Ajoutez des références entre deux éléments de charge utile à l'aide de l'élément JSON internal_id facultatif, qui identifie de manière unique les éléments de charge utile.

Utilisez le bloc pour ajouter ou mettre à jour des referenceItems références. Vous pouvez ajouter des références entre deux éléments, y compris des éléments principaux, des éléments de recherche et des éléments connexes, dans une seule charge utile.

Pour plus d'informations et pour des exemples de code, consultez [CreateOrUpdateCIEnhanced().](https://www.servicenow.com/docs/access?context=IdentificationEngineScopedAPI&version=yokohama&pubname=yokohama-api-reference&ft:locale=en-US)

## Reclassification de CI {#ire__section_vfy_zyl_mjb}

Utilisez les updateWithoutUpgrademarqueurs , updateWithoutDowngradeet dans updateWithoutSwitch le bloc de paramètres d'une charge utile pour empêcher les mises à jour involontaires de la classe des CI. Ces marqueurs empêchent la mise à niveau, le passage à une version antérieure ou le changement de classe d'un CI que plusieurs sources de données peuvent tenter par inadvertance lors de la mise à jour du même CI. Pour plus d'informations et pour des exemples de code, consultez [CreateOrUpdateCIEnhanced().](https://www.servicenow.com/docs/access?context=IdentificationEngineScopedAPI&version=yokohama&pubname=yokohama-api-reference&ft:locale=en-US)

Les marqueurs de reclassification ont priorité sur les autres paramètres système pour [Configurer la reclassification des CI pendant le traitement IRE](https://servicenow-prod.fluidtopics.net/xAiGPNstDAB4KeKDCUgaMQ#c_CIReclassification "Au cours du processus d’identification de CI du moteur IRE (Identification and Reconciliation Engine), un CI peut devoir être reclassé vers un autre type de sys_class_name . Par défaut, les CI sont reclassés automatiquement. Si la reclassification automatique est désactivée, alors le CI n’est pas reclassé et le système génère une tâche de reclassification pour votre révision.").

## Ajout de scripts personnalisés avant et après {#ire__section_xt3_v5p_kpb}

Utilisez Centre [d'intégration ETL](https://servicenow-prod.fluidtopics.net/zZ3wpsxtAMLQnbc9cVoq8w "Utilisez l’application du magasin Centre d’intégration ETL pour créer et gérer des cartes de transformation ETL, qui intègrent des données tierces dans la CMDB ou dans des tables non CMDB sans compromettre l’intégrité des données. Centre d’intégration ETL fournit une interface utilisateur simplifiée qui vous guide tout au long du processus d’intégration de bout en bout, y compris une exécution d’intégration de tests d’exemples de données.") pour [ajouter des scripts Java personnalisés pour une source de données d'une application d'intégration CMDB](https://servicenow-prod.fluidtopics.net/awI3~hl7CEMnw0sIYfyuFQ "Ajoutez des scripts avant et après personnalisés pour une source de données d’une application d’intégration CMDB. Ces scripts permettent d’accéder aux charges utiles d’entrée et de sortie d’IRE. Lorsqu’une intégration CMDB appelle le moteur Identification et rapprochement (IRE), ces scripts s’exécutent avant et après le traitement de la charge utile de l’intégration."). Ces scripts permettent d'accéder aux charges utiles d'entrée et de sortie IRE tout en traitant les intégrations CMDB.  
Avant que les scripts ne fournissent l'accès à un lot de charges utiles d'entrée qui seront envoyées à IRE. L'utilisation d'un script personnalisé avant vous permet d'effectuer les opérations suivantes :

* Ignorez une charge utile dans le lot en définissant le status paramètre <kbd class="ph userinput">sur SKIPPED.</kbd> Vous pouvez également fournir un motif pour ignorer la charge utile, qui s'affichera sous forme de commentaire dans la table des lignes de jeu d'importation respective.
* Modifiez la charge utile d'entrée.
* Écrivez une autre logique personnalisée à l'intérieur du script qui utilise la charge utile IRE.
{#ire__ul_tcc_k3l_lpb}  
After scripts fournissent l'accès aux charges utiles d'entrée et de sortie IRE. L'utilisation d'un script after personnalisé vous permet d'effectuer les opérations suivantes :

* Comparez facilement les charges utiles d'entrée et de sortie et identifiez les différentes opérations effectuées par IRE sur chaque CI.
* Accédez aux sys_ids des CI créés ou mis à jour par IRE.
* Écrivez une autre logique personnalisée à l'intérieur du script qui utilise la charge utile de sortie IRE.
{#ire__ul_ljp_wjl_lpb}

