Livelli di coerenza della ricerca FHIR - AWS HealthLake

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Livelli di coerenza della ricerca FHIR

L'indice HealthLake di ricerca di AWS opera su un modello Eventual Consistency per GET e POST con le operazioni SEARCH. Con una certa coerenza, se c'è un aggiornamento dell'indice di ricerca in sospeso per una risorsa, i risultati della ricerca escludono la versione N-1 della risorsa fino al completamento dell'aggiornamento dell'indice.

AWS HealthLake ora include la possibilità di selezionare il comportamento del modello di coerenza per le risorse aggiornate. Gli sviluppatori possono includere «Eventual Consistency», il comportamento predefinito descritto sopra o «Strong Consistency». Strong Consistency consentirà di includere nei risultati di ricerca la versione N-1 della risorsa per le risorse con aggiornamenti dell'indice di ricerca in sospeso. Questo può essere utilizzato in scenari d'uso in cui tutte le risorse sono necessarie nel risultato anche quando l'aggiornamento dell'indice di ricerca non è ancora stato completato. I clienti possono controllare questo comportamento utilizzando l'intestazione della x-amz-fhir-history-consistency-level richiesta.

Livelli di coerenza

Forte coerenza

Impostato x-amz-fhir-history-consistency-level: strong per restituire tutti i record corrispondenti, inclusi quelli con aggiornamenti dell'indice di ricerca in sospeso. Utilizzate questa opzione quando avete bisogno di cercare risorse subito dopo gli aggiornamenti.

Consistenza finale

Impostata x-amz-fhir-history-consistency-level: eventual per restituire solo i record che hanno completato gli aggiornamenti dell'indice di ricerca. Questo è il comportamento predefinito se non viene specificato alcun livello di coerenza.

Esempio di utilizzo

  1. Quando si aggiorna una risorsa:

    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" }
  2. Ricerca successiva:

    GET <baseURL>/Patient?_id=123

Best practice

  • Usa una forte coerenza quando devi cercare immediatamente risorse aggiornate di recente

  • Utilizza la coerenza finale per le domande generiche in cui la visibilità immediata non è fondamentale

  • Considerate il compromesso tra visibilità immediata e potenziale impatto sulle prestazioni

Nota

L'impostazione del livello di coerenza influisce sulla velocità di visualizzazione delle risorse aggiornate nei risultati di ricerca, ma non sull'effettiva archiviazione delle risorse.

L'impostazione dell'x-amz-fhir-history-consistency-levelintestazione opzionale su «strong» raddoppia il consumo di capacità di scrittura per risorsa.

Questa funzionalità è applicabile solo ai data store per cui è abilitata la cronologia delle versioni (tutti i datastore creati dopo il 25 ottobre 2024 l'hanno abilitata per impostazione predefinita).