Share via


Aan de slag met DICOM-gegevens in analyseworkloads

In dit artikel wordt beschreven hoe u aan de slag gaat met DICOM-gegevens® in analyseworkloads met Azure Data Factory en Microsoft Fabric.

Vereisten

Voer deze stappen uit voordat u aan de slag gaat:

Een Data Factory-pijplijn configureren voor de DICOM-service

In dit voorbeeld wordt een Data Factory-pijplijn gebruikt voor het schrijven van DICOM-kenmerken voor exemplaren, reeksen en onderzoeken naar een opslagaccount in een Delta-tabelindeling.

Open in Azure Portal het Data Factory-exemplaar en selecteer Start studio om te beginnen.

Screenshot that shows the Launch studio button in the Azure portal.

Gekoppelde services maken

Data Factory-pijplijnen lezen uit gegevensbronnen en schrijven naar gegevenssinks. Dit zijn doorgaans andere Azure-services. Deze verbindingen met andere services worden beheerd als gekoppelde services.

De pijplijn in dit voorbeeld leest gegevens uit een DICOM-service en schrijft de uitvoer naar een opslagaccount, dus er moet een gekoppelde service worden gemaakt voor beide.

Een gekoppelde service maken voor de DICOM-service

  1. Selecteer beheren in Azure Data Factory Studio in het menu aan de linkerkant. Selecteer onder Verbinding maken ions gekoppelde services en selecteer vervolgens Nieuw.

    Screenshot that shows the Linked services screen in Data Factory.

  2. Zoek in het deelvenster Nieuwe gekoppelde service naar REST. Selecteer de REST-tegel en selecteer vervolgens Doorgaan.

    Screenshot that shows the New linked service pane with the REST tile selected.

  3. Voer een naam en beschrijving in voor de gekoppelde service.

    Screenshot that shows the New linked service pane with DICOM service details.

  4. Voer in het veld Basis-URL de service-URL voor uw DICOM-service in. Een DICOM-service met de naam contosoclinic in de contosohealth werkruimte heeft bijvoorbeeld de service-URL https://contosohealth-contosoclinic.dicom.azurehealthcareapis.com.

  5. Voor verificatietype selecteert u Door het systeem toegewezen beheerde identiteit.

  6. Voer voor AAD-resource de naam in https://dicom.healthcareapis.azure.com. Deze URL is hetzelfde voor alle DICOM-service-exemplaren.

  7. Nadat u de vereiste velden hebt ingevuld, selecteert u Verbinding testen om ervoor te zorgen dat de rollen van de identiteit correct zijn geconfigureerd.

  8. Wanneer de verbindingstest is geslaagd, selecteert u Maken.

Een gekoppelde service maken voor Azure Data Lake Storage Gen2

  1. Selecteer beheren in Data Factory Studio in het menu aan de linkerkant. Selecteer onder Verbinding maken ions gekoppelde services en selecteer vervolgens Nieuw.

  2. Zoek in het deelvenster Nieuwe gekoppelde service naar Azure Data Lake Storage Gen2. Selecteer de tegel Azure Data Lake Storage Gen2 en selecteer vervolgens Doorgaan.

    Screenshot that shows the New linked service pane with the Azure Data Lake Storage Gen2 tile selected.

  3. Voer een naam en beschrijving in voor de gekoppelde service.

    Screenshot that shows the New linked service pane with Data Lake Storage Gen2 details.

  4. Voor verificatietype selecteert u Door het systeem toegewezen beheerde identiteit.

  5. Voer de gegevens van het opslagaccount in door de URL handmatig in te voeren voor het opslagaccount. U kunt ook het Azure-abonnement en het opslagaccount selecteren in de vervolgkeuzelijsten.

  6. Nadat u de vereiste velden hebt ingevuld, selecteert u Verbinding testen om ervoor te zorgen dat de rollen van de identiteit correct zijn geconfigureerd.

  7. Wanneer de verbindingstest is geslaagd, selecteert u Maken.

Een pijplijn maken voor DICOM-gegevens

Data Factory-pijplijnen zijn een verzameling activiteiten die een taak uitvoeren, zoals het kopiëren van DICOM-metagegevens naar Delta-tabellen. In deze sectie wordt beschreven hoe u een pijplijn maakt waarmee DICOM-gegevens regelmatig worden gesynchroniseerd met Delta-tabellen wanneer gegevens worden toegevoegd aan, bijgewerkt en verwijderd uit een DICOM-service.

  1. Selecteer Auteur in het menu aan de linkerkant. Selecteer in het deelvenster Factory-resources het plusteken (+) om een nieuwe resource toe te voegen. Selecteer Pijplijn en selecteer vervolgens Sjabloongalerie in het menu.

    Screenshot that shows Template gallery selected under Pipeline.

  2. Zoek in de galerie Met sjablonen naar DICOM. Selecteer de tegel DICOM-metagegevenswijzigingen kopiëren naar ADLS Gen2 in Delta-indeling en selecteer vervolgens Doorgaan.

    Screenshot that shows the DICOM template selected in the Template gallery.

  3. Selecteer in de sectie Invoer de gekoppelde services die eerder zijn gemaakt voor de DICOM-service en het Data Lake Storage Gen2-account.

    Screenshot that shows the Inputs section with linked services selected.

  4. Selecteer Deze sjabloon gebruiken om de nieuwe pijplijn te maken.

Een pijplijn maken voor DICOM-gegevens

Als u de DICOM-service hebt gemaakt met Azure Data Lake Storage, moet u een aangepaste sjabloon gebruiken om een nieuwe fileName parameter op te nemen in de metagegevenspijplijn. Volg deze stappen om de pijplijn te configureren in plaats van de sjabloon uit de sjabloongalerie te gebruiken.

  1. Download de sjabloon vanuit GitHub. Het sjabloonbestand is een gecomprimeerde (gezipte) map. U hoeft de bestanden niet te extraheren omdat ze al zijn geüpload in gecomprimeerde vorm.

  2. In Azure Data Factory selecteert u Auteur in het menu links. Selecteer in het deelvenster Factory-resources het plusteken (+) om een nieuwe resource toe te voegen. Selecteer Pijplijn en selecteer Vervolgens Importeren uit pijplijnsjabloon.

  3. Selecteer in het venster Openen de sjabloon die u hebt gedownload. Selecteer Openen.

  4. Selecteer in de sectie Invoer de gekoppelde services die zijn gemaakt voor de DICOM-service en het Azure Data Lake Storage Gen2-account.

    Screenshot showing the Inputs section with linked services selected.

  5. Selecteer Deze sjabloon gebruiken om de nieuwe pijplijn te maken.

Een pijplijn plannen

Pijplijnen worden gepland door triggers. Er zijn verschillende soorten triggers. Met schematriggers kunnen pijplijnen worden geactiveerd volgens een wandklokschema, wat betekent dat ze worden uitgevoerd op specifieke tijdstippen van de dag, zoals elk uur of elke dag om middernacht. Handmatige triggers activeren pijplijnen op aanvraag, wat betekent dat ze worden uitgevoerd wanneer u ze wilt.

In dit voorbeeld wordt een tumblingvenstertrigger gebruikt om de pijplijn periodiek uit te voeren op basis van een beginpunt en een regelmatig tijdsinterval. Zie Pijplijnuitvoering en triggers in Azure Data Factory of Azure Synapse Analytics voor meer informatie over triggers.

Een nieuwe tumblingvenstertrigger maken

  1. Selecteer Auteur in het menu aan de linkerkant. Selecteer de pijplijn voor de DICOM-service en selecteer Trigger toevoegen en Nieuw/Bewerken in de menubalk.

    Screenshot that shows the pipeline view of Data Factory Studio with the Add trigger button on the menu bar selected.

  2. Selecteer in het deelvenster Triggers toevoegen de vervolgkeuzelijst Trigger kiezen en selecteer Vervolgens Nieuw.

  3. Voer een naam en beschrijving in voor de trigger.

    Screenshot that shows the New trigger pane with the Name, Description, Type, Date, and Recurrence fields.

  4. Selecteer Tumblingvenster als het type.

  5. Als u een pijplijn wilt configureren die elk uur wordt uitgevoerd, stelt u het terugkeerpatroonin op 1 uur.

  6. Vouw de sectie Geavanceerd uit en voer een vertraging van 15 minuten in. Met deze instelling kunnen alle bewerkingen die in behandeling zijn aan het einde van een uur worden voltooid voordat de verwerking wordt voltooid.

  7. Stel Maximale gelijktijdigheid in op 1 om consistentie tussen tabellen te garanderen.

  8. Selecteer OK om door te gaan met het configureren van de parameters voor de triggeruitvoering.

Parameters voor triggeruitvoering configureren

Triggers definiëren wanneer een pijplijn moet worden uitgevoerd. Ze bevatten ook parameters die worden doorgegeven aan de pijplijnuitvoering. Met de sjabloon Dicom-metagegevens kopiëren naar Delta worden enkele parameters gedefinieerd die in de volgende tabel worden beschreven. Als er tijdens de configuratie geen waarde wordt opgegeven, wordt de vermelde standaardwaarde gebruikt voor elke parameter.

Parameternaam Beschrijving Default value
BatchSize Het maximum aantal wijzigingen dat moet worden opgehaald uit de wijzigingenfeed (maximaal 200) 200
ApiVersion De API-versie voor de Azure DICOM-service (minimaal 2) 2
StartTime De inclusieve begintijd voor DICOM-wijzigingen 0001-01-01T00:00:00Z
EndTime De exclusieve eindtijd voor DICOM-wijzigingen 9999-12-31T23:59:59Z
ContainerName De containernaam voor de resulterende Delta-tabellen dicom
InstanceTablePath Het pad dat de Delta-tabel voor DICOM SOP-exemplaren in de container bevat instance
SeriesTablePath Het pad dat de Delta-tabel voor DICOM-serie in de container bevat series
StudyTablePath Het pad dat de Delta-tabel bevat voor DICOM-studies binnen de container study
RetentionHours De maximale retentie in uren voor gegevens in de Delta-tabellen 720
  1. Voer in het deelvenster Parameters voor triggeruitvoering de ContainerName-waarde in die overeenkomt met de naam van de opslagcontainer die is gemaakt in de vereisten.

    Screenshot that shows the Trigger Run Parameters pane, with StartTime and EndTime values entered.

  2. Gebruik voor StartTime de systeemvariabele @formatDateTime(trigger().outputs.windowStartTime).

  3. Gebruik voor EndTime de systeemvariabele @formatDateTime(trigger().outputs.windowEndTime).

    Notitie

    Alleen tumblingvenstertriggers ondersteunen de systeemvariabelen:

    • @trigger().outputs.windowStartTime En
    • @trigger().outputs.windowEndTime

    Schematriggers gebruiken verschillende systeemvariabelen:

    • @trigger().scheduledTime En
    • @trigger().startTime

    Meer informatie over triggertypen.

  4. Selecteer Opslaan om de nieuwe trigger te maken. Selecteer Publiceren om de trigger te starten die wordt uitgevoerd volgens de gedefinieerde planning.

    Screenshot that shows the Publish button on the main menu bar.

Nadat de trigger is gepubliceerd, kan deze handmatig worden geactiveerd met behulp van de optie Nu activeren. Als de begintijd is ingesteld voor een waarde in het verleden, wordt de pijplijn onmiddellijk gestart.

Pijplijnuitvoeringen controleren

U kunt triggeruitvoeringen en de bijbehorende pijplijnuitvoeringen bewaken op het tabblad Monitor . Hier kunt u bladeren wanneer elke pijplijn werd uitgevoerd en hoe lang het duurde om deze uit te voeren. U kunt ook mogelijke problemen opsporen die zijn ontstaan.

Screenshot that shows the Monitor view with a list of pipeline runs.

Microsoft Fabric

Fabric is een alles-in-één analyseoplossing die zich boven op Microsoft OneLake bevindt. Met behulp van een Fabric Lakehouse kunt u gegevens in OneLake op één locatie beheren, structuren en analyseren. Alle gegevens buiten OneLake, geschreven naar Data Lake Storage Gen2, kunnen als snelkoppelingen worden verbonden met OneLake om te profiteren van de suite met hulpprogramma's van Fabric.

Snelkoppelingen maken naar metagegevenstabellen

  1. Ga naar het lakehouse dat is gemaakt in de vereisten. Selecteer in de Verkenner-weergave het beletseltekenmenu (...) naast de map Tabellen .

  2. Selecteer Nieuwe snelkoppeling om een nieuwe snelkoppeling te maken naar het opslagaccount dat de DICOM-analysegegevens bevat.

    Screenshot that shows the New shortcut option in the Explorer view.

  3. Selecteer Azure Data Lake Storage Gen2 als bron voor de snelkoppeling.

    Screenshot that shows the New shortcut view with the Azure Data Lake Storage Gen2 tile.

  4. Voer onder Verbinding maken ion-instellingen de URL in die u hebt gebruikt in de sectie Gekoppelde services.

    Screenshot that shows the connection settings for the Azure Data Lake Storage Gen2 account.

  5. Selecteer een bestaande verbinding of maak een nieuwe verbinding door het verificatietype te selecteren dat u wilt gebruiken.

    Notitie

    Er zijn enkele opties voor verificatie tussen Data Lake Storage Gen2 en Fabric. U kunt een organisatieaccount of een service-principal gebruiken. Het is niet raadzaam om accountsleutels of shared access Signature-tokens te gebruiken.

  6. Selecteer Volgende.

  7. Voer een snelkoppelingsnaam in die de gegevens vertegenwoordigt die zijn gemaakt door de Data Factory-pijplijn. Voor de Delta-tabel moet de naam van de instance snelkoppeling bijvoorbeeld waarschijnlijk een exemplaar zijn.

  8. Voer het subpad in dat overeenkomt met de parameter uit de ContainerName configuratie van uitvoeringsparameters en de naam van de tabel voor de snelkoppeling. Gebruik bijvoorbeeld /dicom/instance voor de Delta-tabel met het pad instance in de dicom container.

  9. Selecteer Maken om de snelkoppeling te maken.

  10. Herhaal stap 2 tot en met 9 om de resterende snelkoppelingen toe te voegen aan de andere Delta-tabellen in het opslagaccount (bijvoorbeeld series en study).

Nadat u de snelkoppelingen hebt gemaakt, vouwt u een tabel uit om de namen en typen kolommen weer te geven.

Screenshot that shows the table columns listed in the Explorer view.

Snelkoppelingen naar bestanden maken

Als u een DICOM-service gebruikt met Data Lake Storage, kunt u ook een snelkoppeling maken naar de DICOM-bestandsgegevens die zijn opgeslagen in de data lake.

  1. Ga naar het lakehouse dat is gemaakt in de vereisten. Selecteer in de Verkenner-weergave het beletseltekenmenu (...) naast de map Bestanden .

  2. Selecteer Nieuwe snelkoppeling om een nieuwe snelkoppeling te maken naar het opslagaccount dat de DICOM-gegevens bevat.

    Screenshot that shows the New shortcut option of the Files menu in the Explorer view.

  3. Selecteer Azure Data Lake Storage Gen2 als bron voor de snelkoppeling.

    Screenshot that shows the New shortcut view with the Azure Data Lake Storage Gen2 tile.

  4. Voer onder Verbinding maken ion-instellingen de URL in die u hebt gebruikt in de sectie Gekoppelde services.

    Screenshot that shows the connection settings for the Azure Data Lake Storage Gen2 account.

  5. Selecteer een bestaande verbinding of maak een nieuwe verbinding door het verificatietype te selecteren dat u wilt gebruiken.

  6. Selecteer Volgende.

  7. Voer een snelkoppelingsnaam in waarmee de DICOM-gegevens worden beschreven. Bijvoorbeeld contoso-dicom-files.

  8. Voer het subpad in dat overeenkomt met de naam van de opslagcontainer en map die door de DICOM-service wordt gebruikt. Als u bijvoorbeeld een koppeling naar de hoofdmap wilt maken, is het subpad /dicom/AHDS. Houd er rekening mee dat de hoofdmap altijd AHDSis, maar u kunt desgewenst een koppeling maken naar een onderliggende map voor een specifieke werkruimte of EEN DICOM-service-exemplaar.

  9. Selecteer Maken om de snelkoppeling te maken.

Screenshot that shows the shortcut to the DICOM files.

Notebooks gebruiken

Nadat de tabellen zijn gemaakt in lakehouse, kunt u deze opvragen vanuit Fabric-notebooks. U kunt notitieblokken rechtstreeks vanuit lakehouse maken door Open Notebook te selecteren in de menubalk.

Op de notitieblokpagina kan de inhoud van het lakehouse nog steeds aan de linkerkant worden bekeken, inclusief de zojuist toegevoegde tabellen. Selecteer bovenaan de pagina de taal voor het notitieblok. De taal kan ook worden geconfigureerd voor afzonderlijke cellen. In het volgende voorbeeld wordt Spark SQL gebruikt.

Query's uitvoeren op tabellen met behulp van Spark SQL

Voer in de celeditor een Spark SQL-query in, zoals een SELECT instructie.

SELECT * from instance

Met deze query selecteert u alle inhoud uit de instance tabel. Wanneer u klaar bent, selecteert u Cel uitvoeren om de query uit te voeren.

Screenshot that shows a notebook with a sample Spark SQL query.

Na een paar seconden worden de resultaten van de query weergegeven in een tabel onder de cel, zoals in het voorbeeld dat hier wordt weergegeven. De hoeveelheid tijd kan langer zijn als deze Spark-query de eerste in de sessie is omdat de Spark-context moet worden geïnitialiseerd.

Screenshot that shows a notebook with a sample Spark SQL query and results.

Toegang tot DICOM-bestandsgegevens in notebooks

Als u de sjabloon hebt gebruikt om de pijplijn te maken en een snelkoppeling naar de DICOM-bestandsgegevens hebt gemaakt, kunt u de filePath kolom in de instance tabel gebruiken om metagegevens van exemplaren te correleren met bestandsgegevens.

SELECT sopInstanceUid, filePath from instance

Screenshot that shows a notebook with a sample Spark SQL query and results that includes the filePath.

Samenvatting

In dit artikel hebt u het volgende geleerd:

  • Gebruik Data Factory-sjablonen om een pijplijn te maken van de DICOM-service naar een Data Lake Storage Gen2-account.
  • Configureer een trigger voor het extraheren van DICOM-metagegevens volgens een uurschema.
  • Gebruik snelkoppelingen om DICOM-gegevens in een opslagaccount te verbinden met een Fabric Lakehouse.
  • Gebruik notebooks om query's uit te voeren op DICOM-gegevens in lakehouse.

Volgende stappen

Notitie

DICOM® is het gedeponeerde handelsmerk van de National Electrical Manufacturers Association voor haar standaardenpublicaties met betrekking tot digitale communicatie van medische informatie.