Auf dieser Seite wird beschrieben, wie Sie einen DICOM-Speicher für den Export konfigurieren. DICOM-Instanzmetadaten in eine BigQuery-Tabelle, wenn eines der Folgendes geschieht:
- Sie speichern eine DICOM-Instanz mit der Speichertransaktion oder indem Sie DICOM-Objekte aus einem Cloud Storage-Bucket importieren.
- Sie löschen eine DICOM-Instanz mithilfe einer Deletion-Anfrage.
- Sie ändern die Speicherklasse einer DICOM-Instanz.
Das Streamen von DICOM-Metadaten in eine BigQuery-Tabelle synchronisiert die Tabelle. mit Ihren DICOM-Daten verknüpfen, damit Sie komplexe Abfragen in der neuesten Version von Ihrem DICOM-Speicher.
Hinweise
Bevor Sie Ihren DICOM-Speicher konfigurieren, führen Sie die folgenden Schritte aus
BigQuery-Berechtigungen festlegen
Bevor Sie DICOM-Metadaten an BigQuery streamen, müssen Sie die erforderlichen Berechtigungen für den Cloud Healthcare-Dienst-Agent Dienstkonto. Weitere Informationen finden Sie unter BigQuery-Berechtigungen für den DICOM-Speicher.
Informationen zum Exportieren von DICOM-Metadaten nach BigQuery
Bevor Sie das Streaming konfigurieren, sollten Sie DICOM-Metadaten nach BigQuery exportieren
DICOM-Speicher konfigurieren
Konfigurieren Sie das Objekt StreamConfig
in Ihrem DICOM-Speicher, um das Streaming in BigQuery zu aktivieren. Legen Sie im StreamConfig
-Objekt den Parameter
BigQueryDestination
Objekt an einen voll qualifizierten BigQuery-Tabelle-URI als DICOM
Ziel der Instanzmetadaten.
Sie können bis zu fünf BigQuery-Ziele als kommagetrennte JSON-Objekte.
Wenn Sie DICOM-Instanzen in einem DICOM-Speicher löschen, werden die BigQuery-Zeilen, die die Metadaten für diese Instanzen enthalten, nicht gelöscht.
Console
Führen Sie folgende Schritte aus, um einen DICOM-Speicher zum Aktivieren des BigQuery-Streaming zu aktualisieren:
- Rufen Sie in der Google Cloud Console die Seite Datasets auf.
Zu den Datasets - Wählen Sie das Dataset mit dem DICOM-Speicher aus, den Sie bearbeiten möchten.
- Wählen Sie den DICOM-Speicher aus, für den Sie eine Streaming-Konfiguration hinzufügen.
- Auf dem Tab Übersicht der Seite Datenspeicherdetails Klicken Sie auf Neue Streamingkonfiguration hinzufügen.
- Klicken Sie im Feld Neue Streaming-Konfiguration auf Durchsuchen.
- Wählen Sie im Bereich Tabelle auswählen eine BigQuery-Tabelle.
- Klicken Sie auf Auswählen.
- Klicken Sie auf Fertig.
REST
Die folgenden Beispiele zeigen, wie Sie einen DICOM-Speicher aktualisieren, um das BigQuery-Streaming zu aktivieren. In diesen Beispielen befinden sich der DICOM-Speicher und die BigQuery-Tabelle im selben Projekt. Informationen zum Exportieren von DICOM-Metadaten in ein anderes Projekt finden Sie unter DICOM-Metadaten in ein anderes Projekt exportieren.
Ersetzen Sie diese Werte in den folgenden Anfragedaten:
- PROJECT_ID ist die ID Ihres Google Cloud-Projekts
- LOCATION ist der Standort des Datasets
- DATASET_ID ist das übergeordnete Dataset des DICOM-Speichers
- DICOM_STORE_ID ist die DICOM-Speicher-ID
- BIGQUERY_DATASET_ID ist der Name eines vorhandenen BigQuery-Datasets
- BIGQUERY_TABLE_ID ist ein endeutiger Name für eine Tabelle im BigQuery-Dataset. Weitere Informationen zu den Anforderungen finden Sie unter Tabellennamen. Das BigQuery-Dataset muss vorhanden sein, aber die Cloud Healthcare API kann eine vorhandene Tabelle aktualisieren oder eine neue erstellen.
JSON-Text der Anfrage:
{ 'streamConfigs': [{ 'bigqueryDestination': { 'tableUri': 'bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID' } }] }
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' { 'streamConfigs': [{ 'bigqueryDestination': { 'tableUri': 'bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID' } }] } EOF
Führen Sie dann folgenden Befehl aus, um Ihre REST-Anfrage zu senden:
curl -X PATCH \
-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/dicomStores/DICOM_STORE_ID?updateMask=streamConfigs"
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:
@' { 'streamConfigs': [{ 'bigqueryDestination': { 'tableUri': 'bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID' } }] } '@ | 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 PATCH `
-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/dicomStores/DICOM_STORE_ID?updateMask=streamConfigs" | 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.
Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:
Metadaten zum Löschen
In früheren Versionen der Cloud Healthcare API waren die Metadaten der DICOM-Instanz nur
nach BigQuery exportiert, wenn eine DICOM-Instanz in ein DICOM eingefügt wurde
speichern. Beim Schreiben von Metadaten für Löschvorgänge wurden der erstellten Tabelle zwei neue Spalten mit den Namen Type
und LastUpdated
hinzugefügt, die die DICOM-Metadaten enthalten.
Alle Metadaten in der Tabelle, die vor dem Beginn des Löschens vorhanden waren
metadata hat einen NULL
-Wert für diese Spalten. NULL
ist der niedrigste Wert und
wird zuletzt angezeigt, wenn nach absteigender Reihenfolge sortiert wird.
Generierte BigQuery-Ansicht
Wenn Sie eine DICOM-Instanz in einen DICOM-Speicher einfügen oder löschen, wird der konfigurierte BigQuery-Tabelle wird aktualisiert.
Ist keine Ansicht der Tabelle vorhanden, wird die Ansicht erstellt. Andernfalls wird die Ansicht aktualisiert.
Einschränkungen und zusätzliches Verhalten
In den exportierten Metadaten fehlen möglicherweise einige DICOM-Tags. Wenn ja, wird die fehlende
Tags werden in eine separate Spalte namens DroppedTags.TagName
in der
BigQuery-Zieltabelle.
Tags fehlen aus einem der folgenden Gründe:
- Das DICOM-Tag ist eine nicht unterstützte VR, die unter Ausgeschlossene VRs aufgeführt ist.
- Das DICOM-Tag überschreitet ungefähr 1 MB.
- Die Anzahl der Spalten in der BigQuery-Tabelle überschreitet die
Maximale Anzahl von Spalten.
Beim Exportieren von DICOM-Metadaten in eine BigQuery-Tabelle überschreitet die
Spaltenlimit ändern, werden DICOM-Tags, die nicht mit einer vorhandenen Spalte übereinstimmen,
der Spalte
DroppedTags.Name
. Wenn die SpalteDroppedTags
nicht hinzugefügt werden kann, Die DICOM-Tags werden ohne Benachrichtigung gelöscht und ein Warnprotokoll wird generiert. Weitere Informationen finden Sie unter Fehlerbehebung bei DICOM-Streaminganfragen zum Anzeigen von Logs
Löschmetadaten in eine vorhandene Tabelle einfügen
Das Verhalten der generierten Ansicht hängt davon ab, ob ihre Basis Tabelle enthält Metadaten, die vor den Löschmetadaten hinzugefügt wurden eingeführt.
Angenommen, eine BigQuery-Tabelle enthält DICOM-Metadaten aus der Zeit davor Löschmetadaten unterstützt wurden, und dann geschieht Folgendes:
- Sie fügen eine DICOM-Instanz in einen DICOM-Speicher ein.
- Sie löschen die DICOM-Instanz aus dem DICOM-Speicher.
- Sie bearbeiten die Tags der ursprünglichen DICOM-Instanz und fügen die geänderten DICOM-Instanz in den DICOM-Speicher.
Da die BigQuery-Tabelle die ursprünglichen Metadaten vor dem
Löschmetadaten unterstützt wurden, die ursprüngliche DICOM-Instanz und ihre bearbeiteten
Version dieselben Studien, Serien und Instanzen haben,
eindeutige Kennzeichnungen (Unique Identifiers, UID). Die generierte Ansicht kann
entweder die ursprüngliche DICOM-Instanz oder die neueste DICOM-Instanz. Ohne
der Spalte LastUpdated
enthält, kann in der Ansicht nicht identifiziert werden, welche DICOM-Instanz neuer ist.
Um sicherzustellen, dass Sie die neuesten DICOM-Instanzmetadaten abfragen, führen Sie einen der Folgendes:
- Fragen Sie die Basistabelle anstelle der Ansicht ab. Achten Sie darauf, dass die Abfrage nach den aktualisierten Tags in der bearbeiteten DICOM-Instanz sucht.
Löschen Sie die vorhandene DICOM-Metadaten-Tabelle und erstellen Sie sie dann neu. Dazu exportieren Sie die DICOM-Metadaten manuell nach BigQuery. Die neu erstellte Tabelle enthält die Spalte
LastUpdated
.Mit dieser Option werden historische Streamingmetadaten entfernt, aber die Tabelle wird sichergestellt, enthält die Spalte
LastUpdated
mit gültigen Werten.
Fehlerbehebung bei DICOM-Streaminganfragen
Wenn Fehler während einer DICOM-Anfrage zum Exportieren von Metadaten nach BigQuery auftreten, werden die Fehler in Cloud Logging protokolliert. Weitere Informationen finden Sie unter Fehlerlogs in Cloud Logging ansehen.
Führen Sie die folgenden Schritte aus, um das Streamen von DICOM-Metadaten-Fehlerlogs in der Google Cloud Console zu filtern:
Rufen Sie die Seite Log-Explorer auf.
Geben Sie im Feld Query die folgende Abfrage ein:
logName="healthcare.googleapis.com%2Fdicom_stream"
Klicken Sie auf Abfrage ausführen.
Alle Fehlerlogs werden im Abschnitt Abfrageergebnisse angezeigt.