Die Cloud Healthcare API legt aus verschiedenen Gründen Grenzen für die Ressourcennutzung fest. Kontingente schützen unter anderem die gesamte Google Cloud -Community vor unerwarteten Nutzungsspitzen. Google Cloud bietet außerdem kostenlose Testkontingente, die Nutzern einen eingeschränkten Zugriff ermöglichen, um Google Cloudeinschließlich der Cloud Healthcare API kennenzulernen.
Kontingente für die Cloud Healthcare API werden pro Projekt entweder pro Region oder über mehrere Regionen hinweg erzwungen. Die Erschöpfung des Kontingents in einer einzelnen Region hat keine Auswirkungen auf Ihre Nutzung der Cloud Healthcare API in anderen Regionen.
Kontingente und Nutzung prüfen
Kontingente sind Limits für Speicher (auch Limits für eingehenden Traffic genannt) und Vorgänge.
Das verfügbare Kontingent für Ressourcen in Ihrem Projekt können Sie auf der Seite Kontingente in der Google Cloud -Konsole ermitteln.
Wenn Sie nur die Kontingente der Cloud Healthcare API aufrufen möchten, wählen Sie in der Drop-down-Liste Tabelle filtern die Option Dienst und danach Cloud Healthcare API aus.
Es gelten nicht für alle Projekte dieselben Kontingente. Wenn Sie die Cloud Healthcare API mit der Zeit stärker nutzen, können sich Ihre Kontingente entsprechend erhöhen. Falls Sie eine deutlich stärkere Auslastung erwarten, können Sie auf der Seite Kontingente derGoogle Cloud -Konsole eine Anpassung Ihres Kontingents anfordern. Es fallen keine Gebühren für die Anforderung eines höheren Kontingents an. Ihre Kosten erhöhen sich nur, wenn Sie mehr Ressourcen verwenden.
Ressourcenlimits
Die Cloud Healthcare API begrenzt die Größe des Inhalts einer Anfrage, beispielsweise die Größe eines Röntgenbildes in einer DICOM-Anfrage. Sie können keine Änderung eines Ressourcenlimits anfordern; unter Umständen können Sie jedoch Inhalte, deren Größe das Ressourcenlimit überschreitet, mithilfe eines Importvorgangs importieren.
Die folgenden Ressourcenlimits gelten (Änderungen vorbehalten):
Modalität | Maximale Anfragengröße |
---|---|
DICOM |
|
FHIR |
|
HL7v2 | Größe des Base64-codierten Felds data : 10 MB |
Wenn Sie versuchen, Inhalte zu verarbeiten, die das entsprechende Ressourcenlimit überschreiten, tritt ein Fehler auf.
Größenbeschränkungen für FHIR-executeBundle
Mit der Methode fhir.executeBundle
können Sie mehrere FHIR-Vorgänge in einer einzigen API-Anfrage ausführen. Die Anzahl der Vorgänge hängt von der Anzahl der Einträge in einem Batch- oder Transaktionspaket ab. Dieses Verfahren ist effizienter als einzelne API-Aufrufe für jeden Vorgang.
Die Bearbeitungszeiten für fhir.executeBundle
-Anfragen steigen mit der Anzahl der Einträge im Bundle. Faktoren wie Ressourcenkonflikte (z. B. das parallele Aktualisieren derselben Ressource als Teil vieler Transaktionspakete) können sich ebenfalls auf die Leistung auswirken. Beispiele dafür, wann es zu Ressourcenkonflikten kommen kann und wie Sie verhindern, dass dadurch Fehler verursacht werden, finden Sie unter Best Practices für den Datendurchsatz.
Bei großen Paketen, insbesondere solchen mit mehr als 1.000 Einträgen, kann es zu Zeitüberschreitungen kommen und der Vorgang kann fehlschlagen.
Damit Ihre fhir.executeBundle
-Anfragen erfolgreich und rechtzeitig bearbeitet werden, sollten Sie die folgenden Limits beachten:
- Transaktions-Bundles: Bundles mit mehr als 4.500 Einträgen werden sofort abgelehnt,um Zeitüberschreitungen zu vermeiden. Bei Transaktionsbündeln müssen alle Vorgänge erfolgreich sein.
- Batch-Bundles: Es gibt kein bestimmtes Eintragslimit, aber bei größeren Bundles steigt das Risiko von Zeitüberschreitungen. Zeitüberschreitungen können zu Teilerfolgen führen, bei denen nur einige Einträge verarbeitet werden.
Importvorgänge für Inhalte verwenden, die das Ressourcenlimit überschreiten
Mithilfe von Importvorgängen können Sie Inhalte verarbeiten, die das entsprechende Ressourcenlimit überschreiten. Die Inhaltsgröße bei einem Importvorgang ist nur durch die maximale Speichergröße von 5 TB für Einzelobjekte in Google Cloud begrenzt. Importvorgänge unterliegen Speicherkontingenten, die bestimmen, wie lange ein Importvorgang dauert. Sie können beispielsweise einen Importvorgang verwenden, wenn Sie viele DICOM-Instanzen in einem DICOM-Speicher speichern möchten und nicht dem Größenlimit für Anfragen unterliegen wollen. Anstatt die Instanzen mit den verfügbaren Methoden für Speichertransaktionen hochzuladen, können Sie die Instanzen in einen Cloud Storage-Bucket hochladen und dann in den DICOM-Speicher importieren.
Eine ausführliche Anleitung für das Importieren von DICOM-Daten mithilfe eines Importvorgangs finden Sie unter DICOM-Daten importieren und exportieren.
Eine ausführliche Anleitung für das Importieren von FHIR-Ressourcen mithilfe eines Importvorgangs finden Sie unter FHIR-Ressourcen importieren und exportieren.
Eine ausführliche Anleitung für das Importieren von HL7v2-Nachrichten mithilfe eines Importvorgangs finden Sie unter HL7v2-Nachrichten aus Cloud Storage importieren.
Änderung des Kontingents anfordern
Sie benötigen die Berechtigung serviceusage.quotas.update
, um eine Änderung Ihres Kontingents anzufordern. Diese ist standardmäßig in den vordefinierten Rollen Inhaber, Bearbeiter und Kontingentadministrator enthalten.
Rufen Sie die Seite Kontingente auf.
Wählen Sie auf der Seite Kontingente die Kontingente aus, die Sie ändern möchten. Wenn Sie nur die Kontingente der Cloud Healthcare API aufrufen möchten, wählen Sie in der Drop-down-Liste Tabelle filtern die Option Dienst und danach Cloud Healthcare API aus.
Klicken Sie auf die Kästchen der Kontingente, die Sie bearbeiten möchten.
Klicken Sie oben auf der Seite auf die Schaltfläche Kontingente bearbeiten.
Füllen Sie das Formular aus und klicken Sie dann auf Weiter.
Geben Sie die Limits ein, die Sie anfordern möchten, und klicken Sie dann auf Weiter.
Klicken Sie auf Anfrage senden.
Anfragen zum Verringern des Kontingents werden standardmäßig abgelehnt. Sollten Sie Ihr Kontingent verringern wollen, antworten Sie bitte auf die E-Mail des Supports und erklären Sie Ihre Anforderungen. Ein Supportmitarbeiter wird auf Ihre Anfrage antworten.
Das Team von Cloud Healthcare API antwortet innerhalb von 24 bis 48 Stunden auf Ihre Anfrage.
Fordern Sie zusätzliche Ressourcen mindestens einige Tage im Voraus an, damit genug Zeit bleibt, um Ihrer Anfrage nachzukommen.
Kontingentanfragen für Standorte
Sie können eine Kontingenterhöhung für die Cloud Healthcare API in einer bestimmten Region oder an einem multiregionalen Standort beantragen.
So beantragen Sie eine Kontingenterhöhung in einer einzelnen Region: Geben Sie die Region in Ihrem Antrag auf Kontingenterhöhung an.
So fordern Sie eine Kontingenterhöhung für einen multiregionalen Standort an:
- Wenn Sie eine Kontingenterhöhung für die Multiregion
us
beantragen, geben Sie in Ihrem Antrag an, dass das Kontingent für die „US-Metaregion“ gilt. - Wenn Sie eine Kontingenterhöhung für die Multiregion
eu
beantragen, geben Sie in Ihrer Anfrage an, dass das Kontingent für die „EU-Metaregion“ gilt.
Kontingentlimits
In den folgenden Abschnitten werden die Kontingente für Cloud Healthcare API-Datenspeicher und -Vorgänge beschrieben.
DICOM-Kontingente
In der folgenden Tabelle werden die Cloud Healthcare API-Kontingente für DICOM-Speicher und DICOM-Vorgänge beschrieben.
Messwertname | Anzeigename | Beschreibung |
---|---|---|
dicomweb_ops |
Anzahl der DICOMweb-Vorgänge pro Minute und Region | Enthält die folgenden Methoden:
|
dicom_structured_storage_bytes |
Eingang von strukturiertem DICOM-Speicher in Byte pro Minute und Region | Strukturierte Byte in Form von DICOM-Tags und zugehörigen Metadaten, die während der Verarbeitung von dicomweb_ops -Vorgängen an die Cloud Healthcare API gesendet werden. |
dicom_store_ops |
Anzahl der DICOM-Speichervorgänge pro Minute und Region | Vorgänge für den DICOM-Speicher, nicht für DICOM-Daten. Enthält die folgenden Methoden: |
dicom_store_lro_ops |
Anzahl von DICOM-Speichervorgängen mit langer Ausführungszeit pro Minute und Region | Vorgänge für den DICOM-Speicher, nicht für DICOM-Daten, die einen Vorgang mit langer Ausführungszeit zurückgeben. Enthält die folgenden Methoden: |
dicom_structured_storage_operations_bytes |
Ingress für strukturierten DICOM-Speicher für Vorgänge mit langer Ausführungszeit in Byte pro Minute und Region | Strukturierte Byte in Form von DICOM-Tags und zugehörigen Metadaten, die während der Verarbeitung von dicom_store_lro_ops -Vorgängen an die Cloud Healthcare API gesendet werden. |
FHIR-Kontingente
In der folgenden Tabelle werden die Cloud Healthcare API-Kontingente für FHIR-Speicher und FHIR-Vorgänge beschrieben.
Messwertname | Anzeigename | Beschreibung |
---|---|---|
fhir_read_ops |
Anzahl der FHIR-Leseoperationen pro Minute und Region | Wird in Einheiten gemessen, wobei eine Einheit einer Leseanfrage für eine einzelne FHIR-Ressource entspricht. Umfasst die folgenden Methoden: v1beta1: v1: |
fhir_write_ops |
Anzahl der FHIR-Schreibvorgänge pro Minute und Region | Wird in Einheiten gemessen, wobei eine Einheit einer Anfrage zum Erstellen, Aktualisieren oder Löschen einer einzelnen FHIR-Ressource entspricht. Folgende Methoden sind enthalten: v1beta1: v1: |
fhir_search_ops |
Anzahl der FHIR-Suchvorgänge pro Minute und Region | Wird in Einheiten gemessen. Eine Einheit entspricht einer Suchanfrage für einen FHIR-Ressourcentyp, bei der keine Referenzen aufgelöst werden müssen, außer wenn _include verwendet wird. Eine Observation?subject:Patient.identifier=system|value -Suche verbraucht beispielsweise zwei fhir_search_ops -Kontingenteinheiten, da dafür zwei Suchvorgänge erforderlich sind: einer für die Observation-Ressource und einer für die Patient-Ressource, wobei subject als Referenz verwendet wird.Folgende Methoden sind enthalten: v1beta1:
|
fhir_storage_egress_bytes |
FHIR-Speicherausgang in Byte pro Minute und Region | Gemessen in Einheiten, wobei eine Einheit einem Byte entspricht, das die Cloud Healthcare API beim Verarbeiten von fhir_read_ops -, fhir_write_ops - und fhir_search_ops -Vorgängen aus dem Speicher liest. |
fhir_storage_bytes |
FHIR-Speichereingang in Byte pro Minute und Region | An die Cloud Healthcare API gesendete Byte beim Verarbeiten von fhir_write_ops -Vorgängen. |
fhir_store_ops |
Anzahl der FHIR-Speichervorgänge pro Minute und Region | Vorgänge für den FHIR-Speicher, nicht für FHIR-Daten. Dazu gehören die folgenden Methoden: |
fhir_store_lro_ops |
Anzahl der FHIR-Speicher-Vorgänge mit langer Ausführungszeit pro Minute und Region | Vorgänge für den FHIR-Speicher, nicht für FHIR-Daten, die einen Vorgang mit langer Ausführungszeit zurückgeben. Dazu gehören die folgenden Methoden: |
fhir_storage_operations_bytes |
FHIR-Speicher-Ingress für Vorgänge mit langer Ausführungszeit in Byte pro Minute und Region | An die Cloud Healthcare API gesendete Byte beim Verarbeiten von fhir_store_lro_ops -Vorgängen. |
Suchen mit mehreren Vorgängen
Eine einzelne Anfrage kann mehrere Kontingenteinheiten verbrauchen. Wenn Sie beispielsweise eine GET
-Suchanfrage mit Observation?subject:Patient.identifier=system|value
als Suchparameter senden, werden zwei fhir_search_ops
-Kontingenteinheiten verbraucht. Es werden zwei Suchvorgänge ausgeführt, einer für die Observation-Ressource und einer für die Patient-Ressource, wobei subject
als Referenz verwendet wird.
Wenn bei einer bedingten Löschanfrage mit Observation?status=canceled
als Suchkriterium sechs Observation-Ressourcen gesucht und gelöscht werden, werden die folgenden Kontingenteinheiten verbraucht:
- Eine
fhir_search_ops
-Kontingenteinheit, da dieGET
-Suchanfrage nur für einen FHIR-Ressourcentyp, die Observation-Ressource, ausgeführt wird. Die Anfrage gibt alle Observation-Ressourcen zurück, die den Suchkriterien entsprechen. - Sechs
fhir_write_ops
-Kontingenteinheiten, da insgesamt sechsDELETE
-Vorgänge für die gelöschten Beobachtungsressourcen vorhanden sind.
Kontingentverbrauch für die Ausführung von Bundles
Wenn Sie eine execute bundle-Anfrage senden möchten, muss für IhrGoogle Cloud -Projekt unabhängig vom Kontingent, das durch die Anfrage verbraucht wird, mindestens eine Einheit für jedes der folgenden Kontingente verfügbar sein:
fhir_read_ops
fhir_write_ops
fhir_search_ops
Wenn diese Kontingente nicht verfügbar sind, schlägt die Anfrage zum Ausführen des Bundles fehl.
Wenn Sie beispielsweise eine fhir.executeBundle
-Anfrage mit einem Transaktions-Bundle senden, das 100 POST
-Vorgänge enthält, von denen jeder eine FHIR-Ressource erstellt, prüft die Cloud Healthcare API zuerst, ob mindestens eine Kontingenteinheit für fhir_read_ops
, fhir_write_ops
und fhir_search_ops
verfügbar ist. Wenn die Überprüfung erfolgreich ist, führt die Cloud Healthcare API das Bundle aus und erstellt die FHIR-Ressourcen, für die insgesamt 100 fhir_write_ops
-Kontingenteinheiten verbraucht werden.
Betrachten Sie das folgende Transaktions-Bundle, in dem ein bedingter Verweis verwendet wird, um eine Beobachtungsressource zu erstellen, wenn reference
vorhanden ist:
{
"resourceType": "Bundle",
"type": "transaction",
"entry": [
{
"request": {
"method": "POST",
"url": "Observation"
},
"resource": {
"resourceType": "Observation",
"subject": {
"reference": "Patient?identifier=a1b2c3d4e5"
}
}
}
]
}
Wenn Sie das Bundle ausführen, prüft die Cloud Healthcare API zuerst, ob mindestens eine Kontingenteinheit für fhir_read_ops
, fhir_write_ops
und fhir_search_ops
verfügbar ist. Wenn die Prüfung erfolgreich ist, führt die Cloud Healthcare API das Bundle aus. Die folgenden Kontingenteinheiten werden verbraucht:
- Ein
fhir_write_ops
zum Erstellen der neuen Observation-Ressource. - Ein
fhir_search_ops
, da ein einzelner Suchvorgang für denPatient?identifier=a1b2c3d4e5
-Verweis ausgeführt wird.
Best Practices
Best Practices für die Verwaltung von Cloud Healthcare API-Kontingenten finden Sie unter Best Practices für die Kontingentverwaltung.