

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Niveaux de cohérence des recherches FHIR
<a name="searching-fhir-consistency-levels"></a>

L'index HealthLake de recherche d'AWS fonctionne selon un modèle de cohérence éventuelle pour `GET` et `POST` avec les opérations de recherche. Pour des raisons de cohérence, si une mise à jour de l'index de recherche est en attente pour une ressource, les résultats de la recherche excluent la version N-1 de la ressource jusqu'à ce que la mise à jour de l'index soit terminée.

 AWS inclut HealthLake désormais la possibilité de sélectionner le comportement du modèle de cohérence pour les ressources mises à jour. Les développeurs peuvent inclure soit la « cohérence éventuelle », le comportement par défaut décrit ci-dessus, soit la « cohérence forte ». Une forte cohérence permettra d'inclure dans les résultats de recherche la version N-1 de la ressource pour les ressources dont les mises à jour de l'index de recherche sont en attente. Cela peut être utilisé pour des scénarios d'utilisation où toutes les ressources sont requises dans le résultat même lorsque la mise à jour de l'index de recherche n'est pas encore terminée. Les clients peuvent contrôler ce comportement à l'aide de l'en-tête de `x-amz-fhir-history-consistency-level` demande. 

## Niveaux de cohérence
<a name="fhir-search-consistency-levels"></a>

Forte cohérence  
`x-amz-fhir-history-consistency-level: strong`Paramétré pour renvoyer tous les enregistrements correspondants, y compris ceux dont les mises à jour de l'index de recherche sont en attente. Utilisez cette option lorsque vous devez rechercher des ressources immédiatement après les mises à jour.

Cohérence à terme  
Paramétré `x-amz-fhir-history-consistency-level: eventual` pour renvoyer uniquement les enregistrements dont les mises à jour de l'index de recherche sont terminées. Il s'agit du comportement par défaut si aucun niveau de cohérence n'est spécifié.

## Exemple d’utilisation
<a name="fhir-search-usage"></a>

1. Lors de la mise à jour d'une ressource :

   ```
   POST <baseURL>/Patient
   Content-Type: application/fhir+json
   x-amz-fhir-history-consistency-level: strong
   
   {
     "resourceType": "Patient",
     "id": "123",
     "meta": {
       "profile": ["http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient"]
     },
     "identifier": [
       {
         "system": "http://example.org/identifiers",
         "value": "123"
       }
     ],
     "active": true,
     "name": [
       {
         "family": "Smith",
         "given": ["John"]
       }
     ],
     "gender": "male",
     "birthDate": "1970-01-01"
   }
   ```

1. Recherche ultérieure :

   ```
   GET <baseURL>/Patient?_id=123
   ```

## Bonnes pratiques
<a name="fhir-search-best-practices"></a>
+ Faites preuve d'une grande cohérence lorsque vous devez rechercher immédiatement des ressources récemment mises à jour
+ Utilisez la cohérence éventuelle pour les requêtes générales pour lesquelles une visibilité immédiate n'est pas essentielle
+ Tenez compte du compromis entre visibilité immédiate et impact potentiel sur les performances

**Note**  
Le paramètre du niveau de cohérence influe sur la rapidité avec laquelle les ressources mises à jour apparaissent dans les résultats de recherche, mais n'a aucune incidence sur le stockage réel des ressources.  
Le fait de définir l'`x-amz-fhir-history-consistency-level`en-tête facultatif sur « fort » double la consommation de capacité d'écriture par ressource.  
Cette fonctionnalité s'applique uniquement aux magasins de données dont l'historique des versions est activé (tous les magasins de données créés après le 25 octobre 2024 l'ont activé par défaut).