FHIR-Ressourcen mit der Wiederherstellung zu einem bestimmten Zeitpunkt (PITR) wiederherstellen

Auf dieser Seite wird beschrieben, wie Sie mit der Wiederherstellung zu einem bestimmten Zeitpunkt (Point-in-Time Recovery, PITR) FHIR-Ressourcen in einem FHIR-Speicher in einen Zustand innerhalb der letzten 21 Tage zurücksetzen. Mit der Wiederherstellung zu einem bestimmten Zeitpunkt können Sie unerwünschte Änderungen rückgängig machen, z. B. das versehentliche Löschen von FHIR-Ressourcen.

Hinweise

PITR-Anfragen werden als Anfragen für erweiterte Vorgänge kategorisiert und entsprechend abgerechnet. Bevor Sie PITR verwenden, sollten Sie sich die Preise für Anfragen für erweiterte Vorgänge ansehen.

PITR und FHIR-Ressourcenversionsverlauf

PITR ist nicht vom Versionsverlauf von FHIR-Ressourcen abhängig. Sie können PITR weiterhin verwenden, wenn das Feld disableResourceVersioning in einem FHIR-Speicher true ist oder wenn die älteren Versionen einer FHIR-Ressource gelöscht wurden.

Wiederherstellungsworkflow

Damit die Wiederherstellung in der Produktion wie erwartet abläuft, sollten Sie zuerst einen Probelauf durchführen. Bei einem Probelauf werden eine oder mehrere Dateien ausgegeben, die die IDs und Typen der wiederherzustellenden FHIR-Ressourcen enthalten. Prüfen Sie die Richtigkeit der Ausgabedateien, bevor Sie die Wiederherstellung noch einmal in der Produktionsumgebung ausführen.

Wenn Sie bestimmte Ressourcen oder Ressourcen nach einem Filterkriterium wiederherstellen möchten, geben Sie einen Filter an.

Probelauf durchführen

Führen Sie einen Probelauf durch, bevor Sie FHIR-Ressourcen in der Produktion wiederherstellen.

In den folgenden Beispielen wird gezeigt, wie Sie mit der Methode fhirStores.rollback einen Probelauf durchführen.

REST

  1. FHIR-Ressourcen wiederherstellen.

    Für einen Probelauf muss das Feld force auf false festgelegt sein.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • PROJECT_ID: die ID Ihres Google Cloud Projekts
    • LOCATION ist der Standort des Datasets
    • DATASET_ID: das übergeordnete Dataset des FHIR-Speichers
    • FHIR_STORE_ID: die FHIR-Speicher-ID
    • RECOVERY_TIMESTAMP: Ein Wiederherstellungspunkt innerhalb der letzten 21 Tage. Verwenden Sie das RFC 3339-Format. Geben Sie die Uhrzeit auf die Sekunde genau an und fügen Sie eine Zeitzone hinzu, z. B. 2015-02-07T13:28:17.239+02:00 oder 2017-01-01T00:00:00Z.
    • CLOUD_STORAGE_BUCKET: der vollständig qualifizierte URI zu einem Cloud Storage-Ordner oder -Bucket, in den Ausgabedateien geschrieben werden

    JSON-Text der Anfrage:

    {
      "rollbackTime": "RECOVERY_TIMESTAMP",
      "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET",
      "force": "false"
    }
    

    Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

    curl

    Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json. Führen Sie folgenden Befehl im Terminal aus, um diese Datei im aktuellen Verzeichnis zu erstellen oder zu überschreiben:

    cat > request.json << 'EOF'
    {
      "rollbackTime": "RECOVERY_TIMESTAMP",
      "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET",
      "force": "false"
    }
    EOF

    Führen Sie dann folgenden Befehl aus, um Ihre REST-Anfrage zu senden:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:rollback"

    PowerShell

    Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json. Führen Sie folgenden Befehl im Terminal aus, um diese Datei im aktuellen Verzeichnis zu erstellen oder zu überschreiben:

    @'
    {
      "rollbackTime": "RECOVERY_TIMESTAMP",
      "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET",
      "force": "false"
    }
    '@  | Out-File -FilePath request.json -Encoding utf8

    Führen Sie dann folgenden Befehl aus, um Ihre REST-Anfrage zu senden:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -ContentType: "application/json; charset=utf-8" `
    -InFile request.json `
    -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:rollback" | Select-Object -Expand Content

    APIs Explorer

    Kopieren Sie den Anfragetext und öffnen Sie die Referenzseite für Methoden. Der API Explorer wird rechts auf der Seite geöffnet. Sie können mit diesem Tool interagieren, um Anfragen zu senden. Fügen Sie den Anfragetext in dieses Tool ein, füllen Sie alle Pflichtfelder aus und klicken Sie auf Ausführen.

    Die Ausgabe sieht so aus. Die Antwort enthält eine Kennung für einen Vorgang mit langer Ausführungszeit (Long-Running Operation, LRO). Lang andauernde Vorgänge werden zurückgegeben, wenn die Ausführung von Methodenaufrufen zusätzliche Zeit in Anspruch nehmen kann. Notieren Sie sich den Wert von OPERATION_ID. Sie benötigen diesen Wert im nächsten Schritt.

  2. Mit der Methode projects.locations.datasets.operations.get können Sie den Status des Vorgangs mit langer Ausführungszeit abrufen.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • PROJECT_ID: die ID Ihres Google Cloud Projekts
    • DATASET_ID ist die Dataset-ID
    • LOCATION: der Standort des Datasets
    • OPERATION_ID: die ID, die vom Vorgang mit langer Ausführungszeit zurückgegeben wurde

    Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

    curl

    Führen Sie folgenden Befehl aus:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"

    PowerShell

    Führen Sie folgenden Befehl aus:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method GET `
    -Headers $headers `
    -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand Content

    APIs Explorer

    Öffnen Sie die Methodenreferenzseite. Der API Explorer wird rechts auf der Seite geöffnet. Sie können mit diesem Tool interagieren, um Anfragen zu senden. Füllen Sie die Pflichtfelder aus und klicken Sie auf Ausführen.

    Die Ausgabe sieht so aus. Wenn die Antwort "done": true enthält, ist der Vorgang mit langer Ausführungszeit abgeschlossen.

Ausgabedateien für den Probelauf ansehen

Bei jedem Probelauf werden eine oder mehrere Dateien ausgegeben, die die IDs und Typen der wiederherzustellenden FHIR-Ressourcen enthalten. Die Dateien werden in einem Unterordner im Ordner rollback_resources im Ziel-Cloud Storage-Bucket erstellt. Der Name des Unterordners ist die LRO-ID, die in der fhirStores.rollback-Antwort zurückgegeben wird. Informationen zum Ansehen der Dateien und zum Prüfen, ob die Wiederherstellung wie erwartet funktioniert, finden Sie unter Objektmetadaten ansehen.

Die Anzahl der Dateien ist proportional zur Anzahl der wiederhergestellten FHIR-Ressourcen.

Dateinamen haben das Format trial-NUMBER-of-TOTAL_NUMBER.txt, wobei NUMBER die Dateinummer und TOTAL_NUMBER die Gesamtzahl der Dateien ist.

Schema der Ausgabedatei für den Probelauf

Die Ausgabedateien einer Testwiederherstellung verwenden das Schema in der folgenden Tabelle:

RESOURCE_TYPE RESOURCE_ID TIMESTAMP
Der FHIR-Ressourcentyp. Die FHIR-Ressourcen-ID. Der Zeitpunkt, zu dem die FHIR-Ressource im FHIR-Speicher erstellt oder aktualisiert wurde.

In der Produktionsumgebung wiederherstellen

Bevor Sie die Wiederherstellung in der Produktionsumgebung durchführen, sollten Sie einen Probelauf durchführen und die Ausgabedateien des Probelaufs prüfen, um sicherzustellen, dass die Wiederherstellung in der Produktionsumgebung wie erwartet abläuft.

Die folgenden Beispiele zeigen, wie Sie FHIR-Ressourcen in der Produktion mit der Methode fhirStores.rollback wiederherstellen.

REST

  1. FHIR-Ressourcen wiederherstellen.

    Prüfen Sie, ob das Feld force true ist.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • PROJECT_ID: die ID Ihres Google Cloud Projekts
    • LOCATION ist der Standort des Datasets
    • DATASET_ID: das übergeordnete Dataset des FHIR-Speichers
    • FHIR_STORE_ID: die FHIR-Speicher-ID
    • RECOVERY_TIMESTAMP: Ein Wiederherstellungspunkt innerhalb der letzten 21 Tage. Verwenden Sie das RFC 3339-Format. Geben Sie die Uhrzeit auf die Sekunde genau an und fügen Sie eine Zeitzone hinzu, z. B. 2015-02-07T13:28:17.239+02:00 oder 2017-01-01T00:00:00Z.
    • CLOUD_STORAGE_BUCKET: der vollständig qualifizierte URI zu einem Cloud Storage-Ordner oder -Bucket, in den Ausgabedateien geschrieben werden

    JSON-Text der Anfrage:

    {
      "rollbackTime": "RECOVERY_TIMESTAMP",
      "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET",
      "force": "true"
    }
    

    Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

    curl

    Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json. Führen Sie folgenden Befehl im Terminal aus, um diese Datei im aktuellen Verzeichnis zu erstellen oder zu überschreiben:

    cat > request.json << 'EOF'
    {
      "rollbackTime": "RECOVERY_TIMESTAMP",
      "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET",
      "force": "true"
    }
    EOF

    Führen Sie dann folgenden Befehl aus, um Ihre REST-Anfrage zu senden:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json; charset=utf-8" \
    -d @request.json \
    "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:rollback"

    PowerShell

    Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json. Führen Sie folgenden Befehl im Terminal aus, um diese Datei im aktuellen Verzeichnis zu erstellen oder zu überschreiben:

    @'
    {
      "rollbackTime": "RECOVERY_TIMESTAMP",
      "resultGcsBucket": "gs://CLOUD_STORAGE_BUCKET",
      "force": "true"
    }
    '@  | Out-File -FilePath request.json -Encoding utf8

    Führen Sie dann folgenden Befehl aus, um Ihre REST-Anfrage zu senden:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method POST `
    -Headers $headers `
    -ContentType: "application/json; charset=utf-8" `
    -InFile request.json `
    -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:rollback" | Select-Object -Expand Content

    APIs Explorer

    Kopieren Sie den Anfragetext und öffnen Sie die Referenzseite für Methoden. Der API Explorer wird rechts auf der Seite geöffnet. Sie können mit diesem Tool interagieren, um Anfragen zu senden. Fügen Sie den Anfragetext in dieses Tool ein, füllen Sie alle Pflichtfelder aus und klicken Sie auf Ausführen.

    Die Ausgabe sieht so aus. Die Antwort enthält eine Kennung für einen Vorgang mit langer Ausführungszeit (Long-Running Operation, LRO). Lang andauernde Vorgänge werden zurückgegeben, wenn die Ausführung von Methodenaufrufen zusätzliche Zeit in Anspruch nehmen kann. Notieren Sie sich den Wert von OPERATION_ID. Sie benötigen diesen Wert im nächsten Schritt.

  2. Mit der Methode projects.locations.datasets.operations.get können Sie den Status des Vorgangs mit langer Ausführungszeit abrufen.

    Ersetzen Sie diese Werte in den folgenden Anfragedaten:

    • PROJECT_ID: die ID Ihres Google Cloud Projekts
    • DATASET_ID ist die Dataset-ID
    • LOCATION: der Standort des Datasets
    • OPERATION_ID: die ID, die vom Vorgang mit langer Ausführungszeit zurückgegeben wurde

    Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

    curl

    Führen Sie folgenden Befehl aus:

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"

    PowerShell

    Führen Sie folgenden Befehl aus:

    $cred = gcloud auth print-access-token
    $headers = @{ "Authorization" = "Bearer $cred" }

    Invoke-WebRequest `
    -Method GET `
    -Headers $headers `
    -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand Content

    APIs Explorer

    Öffnen Sie die Methodenreferenzseite. Der API Explorer wird rechts auf der Seite geöffnet. Sie können mit diesem Tool interagieren, um Anfragen zu senden. Füllen Sie die Pflichtfelder aus und klicken Sie auf Ausführen.

    Die Ausgabe sieht so aus. Wenn die Antwort "done": true enthält, ist der Vorgang mit langer Ausführungszeit abgeschlossen.

Ausgabedateien für die Produktionswiederherstellung ansehen

Bei der Wiederherstellung der Produktion werden die folgenden Dateien ausgegeben. Die Dateien werden in einem Unterordner des Ordners rollback_resources im Ziel-Cloud Storage-Bucket erstellt. Der Name des Unterordners ist die LRO-ID, die in der fhirStores.rollback-Antwort zurückgegeben wird. Informationen zum Aufrufen der Dateien finden Sie unter Objektmetadaten ansehen.

  • success-NUMBER-of-TOTAL_NUMBER.txt: Enthält erfolgreich wiederhergestellte FHIR-Ressourcen.
  • fail-NUMBER-of-TOTAL_NUMBER.txt: Enthält FHIR-Ressourcen, die nicht wiederhergestellt werden konnten. Auch wenn keine Fehler auftreten, wird eine leere Datei generiert.

In den Dateinamen ist NUMBER die Dateinummer und TOTAL_NUMBER die Gesamtzahl der Dateien.

Schema der Produktionsausgabedatei

Die Erfolgs- und Fehlerdateien für die Wiederherstellung in der Produktion verwenden das folgende Schema. Fehlerdateien enthalten eine zusätzliche Spalte ERROR_MESSAGE.

RESOURCE_TYPE RESOURCE_ID ROLLBACK_VERSION_ID NEW_VERSION_ID ERROR_MESSAGE (nur Fehlerdateien)
Der FHIR-Ressourcentyp. Die FHIR-Ressourcen-ID. Die aktuelle Versions-ID der Ressource zu dem Zeitpunkt, als die Wiederherstellung gestartet wurde. Die aktuelle Versions-ID der Ressource nach der Wiederherstellung. Wenn disableResourceVersioning den Wert true hat oder wenn durch das Wiederherstellen einer Ressource die Ressource gelöscht würde, sind ROLLBACK_VERSION_ID und NEW_VERSION_ID leer. Nur Fehlerdateien. Beschreibt, warum die FHIR-Ressource wiederhergestellt werden soll.

Filter verwenden, um bestimmte FHIR-Ressourcen wiederherzustellen

In den folgenden Abschnitten wird beschrieben, wie Sie Filter verwenden, um FHIR-Ressourcen anhand eines Filterkriteriums wiederherzustellen. Sie geben die Filter im Objekt RollbackFhirResourceFilteringFields an, wenn Sie eine fhirStores.rollback-Anfrage senden.

Sie können Filter kombinieren oder für mehrere Anwendungsfälle einzeln verwenden, z. B. für:

  • Bestimmte FHIR-Ressourcen nach versehentlichem Löschen wiederherstellen, während andere unverändert bleiben.
  • Einen FHIR-Speicher in einen Zustand vor einem bestimmten Importvorgang zurücksetzen, bei dem bestimmte FHIR-Ressourcen importiert wurden.

Filterdatei verwenden

Standardmäßig werden bei PITR alle FHIR-Ressourcen in einem FHIR-Speicher wiederhergestellt. Wenn Sie bestimmte FHIR-Ressourcen wiederherstellen möchten, geben Sie die Ressourcentypen und ihre Ressourcen-IDs in einer Datei an und laden Sie die Datei dann in Cloud Storage hoch. Geben Sie den Speicherort der Datei im Feld inputGcsObject an.

Damit eine Filterdatei aus Cloud Storage gelesen werden kann, müssen Sie dem Dienstkonto des Cloud Healthcare-Dienst-Agents Berechtigungen erteilen. Weitere Informationen finden Sie unter Filterdateien aus Cloud Storage lesen.

Die Filterdatei kann eine beliebige Erweiterung haben. Es muss das folgende Schema mit einer FHIR-Ressource pro Zeile verwendet werden:

FHIR_RESOURCE_TYPE/FHIR_RESOURCE_ID

Wenn Sie beispielsweise eine Patientenressource mit der ID 8f25b0ac und zwei Beobachtungsressourcen mit den IDs d507417e90e und e9950d90e wiederherstellen möchten, geben Sie Folgendes in der Filterdatei an:

Patient/8f25b0ac
Observation/d507417e90e
Observation/e9950d90e

Benutzerdefinierte Funktionen verwenden

Die Cloud Healthcare API bietet die folgenden benutzerdefinierten Filterfunktionen. Sie können die benutzerdefinierten Funktionen mit dem Feld rollbackTime kombinieren, um einen zusätzlichen Filter anzuwenden.

tag
Details
Funktionssyntax
tag("system") = "code"
Beschreibung
Filtert FHIR-Ressourcen basierend auf dem Ressourcenelement Meta.tag.
Argumente
system
string
Eine URL, die auf ein Codesystem verweist. Weitere Informationen finden Sie unter Codes in Ressourcen verwenden.
code
string
Ein Wert, der ein Konzept identifiziert, wie es vom Codesystem definiert wird. Weitere Informationen finden Sie unter Codes in Ressourcen verwenden.
extension_value_ts
Details
Funktionssyntax
extension_value_ts("url")
Beschreibung
Filtert FHIR-Ressourcen basierend auf dem url-Wert in einem extension-Element, wobei url ein Unix-Zeitstempel ist. Unterstützt die folgenden Vergleichsoperatoren:
  • =
  • !=
  • <
  • >
  • <=
  • >=
Argumente
url
string
Die kanonische URL einer StructureDefinition-Ressource, die eine Erweiterung definiert. Im folgenden extension-Element ist url beispielsweise http://hl7.org/fhir/StructureDefinition/timezone:
"extension" : [{
  "url" : "http://hl7.org/fhir/StructureDefinition/timezone",
  "valueCode" : "America/New_York"
}]
Weitere Informationen finden Sie unter Erweiterungen definieren.

Nach FHIR-Ressourcentyp filtern

Wenn Sie FHIR-Ressourcen nur nach dem Ressourcentyp filtern möchten, geben Sie die Ressourcentypen im Array types[] an.

Nach Vorgangstyp filtern

Wenn Sie nach FHIR-Ressourcen filtern möchten, die durch eine CREATE-, UPDATE- oder DELETE-Transaktion geändert wurden, geben Sie einen Wert in der ChangeType-Enumeration an.

Wenn Sie beispielsweise nur gelöschte FHIR-Ressourcen wiederherstellen möchten, geben Sie den Wert DELETE an.

Wenn Sie CHANGE_TYPE_UNSPECIFIED, ALL angeben oder keinen Wert angeben, werden alle FHIR-Ressourcen wiederhergestellt.

Vorherige Wiederherstellungen ausschließen

Wenn Sie vorherige Wiederherstellungen beim Wiederherstellen von FHIR-Ressourcen ausschließen möchten, legen Sie das Feld excludeRollbacks auf true fest. Sie können vorherige Wiederherstellungen ausschließen, wenn sie korrekt funktioniert haben und Sie ihre Änderungen nicht überschreiben möchten. Sie können auch mehrere Wiederherstellungen mit sich überschneidenden Zeitstempeln ausführen.

Stellen Sie sich folgendes Szenario vor:

  1. Um 1:00 starten Sie eine Wiederherstellung mit dem Wiederherstellungszeitstempel 0:01. Bei 2:00 werden durch den Wiederherstellungsvorgang die Patientenressourcen Patient/1 und Patient/2 im FHIR-Speicher gelöscht. Der Wiederherstellungsvorgang endet am 3:00.
  2. Einige Tage später führen Sie einen Wiederherstellungsvorgang aus, wobei der Wiederherstellungszeitstempel auf 1:00 festgelegt ist. Standardmäßig würde das Ausführen des Vorgangs Folgendes bewirken:

    • Die Patientenressourcen Patient/1 und Patient/2 wurden fälschlicherweise neu erstellt.
    • FHIR-Ressourcen, die nach dem 3:00 erstellt oder aktualisiert wurden, werden korrekt wiederhergestellt.

Wenn Sie den ursprünglichen Wiederherstellungsvorgang ausschließen möchten, bei dem die Patientenressourcen Patient/1 und Patient/2 gelöscht wurden, und vermeiden möchten, dass sie neu erstellt werden, setzen Sie excludeRollbacks auf true.

Mit IDs von Vorgängen mit langer Ausführungszeit filtern

Wenn FHIR-Ressourcen durch einen oder mehrere Vorgänge mit langer Ausführungszeit (Long-Running Operations, LROs) geändert wurden, können Sie die LRO-IDs im Feld operationIds angeben, um die geänderten Ressourcen wiederherzustellen.

Informationen zum Auflisten und Ansehen von LRO-IDs in einem Cloud Healthcare API-Dataset finden Sie unter LROs auflisten.

FHIR-Ressourcen, die in der Produktion nicht wiederhergestellt werden konnten, noch einmal versuchen

Wenn bei der Wiederherstellung in der Produktion einige FHIR-Ressourcen fehlgeschlagen sind, können Sie die Wiederherstellung noch einmal versuchen. Verwenden Sie die generierte Ausgabedatei für die Produktion, um die FHIR-Ressourcen zu finden, bei denen ein Fehler aufgetreten ist. Geben Sie die Typen dieser FHIR-Ressourcen und ihre IDs in einer Filterdatei an und führen Sie die Wiederherstellung noch einmal aus.

Jedes Mal, wenn Sie eine Wiederherstellung ausführen, ist die Wiederherstellung idempotent, wenn Sie in jeder Anfrage dieselbe Konfiguration verwenden und der Zeitstempel innerhalb der letzten 21 Tage liegt.

Beschränkungen

  • PITR erzwingt keine referenzielle Integrität, unabhängig von der disableReferentialIntegrity-Einstellung des FHIR-Speichers. Wenn nur einige FHIR-Ressourcen wiederhergestellt werden, kann der FHIR-Speicher in einem Zustand verbleiben, der die referenzielle Integrität verletzt.

  • Bei PITR wird die FHIR-Profilvalidierung übersprungen, da die wiederhergestellten FHIR-Ressourcen bei ihrer Erstellung oder Aktualisierung validiert wurden. Wenn sich die Profilkonfiguration des FHIR-Speichers geändert hat, kann es sein, dass der FHIR-Speicher nach der Wiederherstellung zu einem bestimmten Zeitpunkt in einem Zustand ist, der gegen die Profilvalidierung verstößt.

  • Wenn der Wert von rollbackTime vor dem Zeitpunkt liegt, zu dem eine FHIR-Ressource im FHIR-Speicher gelöscht wurde, muss für den FHIR-Speicher enableUpdateCreate aktiviert sein, da die Ressource sonst nicht wiederhergestellt werden kann.

  • Sie können einen FHIR-Informationsspeicher aktualisieren oder Daten während einer Wiederherstellung lesen und schreiben. Je nach Wiederherstellungsphase kann es jedoch zu unerwarteten Ergebnissen kommen. Beispielsweise kann eine Leseanfrage eine Kombination aus wiederhergestellten und nicht wiederhergestellten FHIR-Ressourcen zurückgeben. Wenn Sie eine Ressource aktualisieren, kann die Wiederherstellung die Aktualisierung überschreiben.

  • PITR behält den FHIR-Ressourcenverlauf bei. Jede wiederhergestellte Ressource erhält eine neue aktuelle Version und ihr Verlauf wird beibehalten.