Начало работы с данными DICOM в рабочих нагрузках аналитики

В этой статье описывается, как приступить к работе с данными DICOM® в рабочих нагрузках аналитики с Фабрика данных Azure и Microsoft Fabric.

Необходимые компоненты

Прежде чем приступить к работе, выполните следующие действия.

  • Создайте учетную запись хранения с возможностями Azure Data Lake Storage 2-го поколения, включив иерархическое пространство имен:
    • Создайте контейнер для хранения метаданных DICOM, например с именем dicom.
  • Разверните экземпляр службы DICOM.
  • Создайте экземпляр фабрики данных:
    • Включите управляемое удостоверение, назначаемое системой.
  • Создайте lakehouse в Fabric.
  • Добавьте назначения ролей в управляемое удостоверение, назначаемое системой фабрики данных, для службы DICOM и учетной записи хранения Data Lake Storage 2-го поколения:
    • Добавьте роль средства чтения данных DICOM, чтобы предоставить разрешение службе DICOM.
    • Добавьте роль участника служба хранилища данных BLOB-объектов, чтобы предоставить разрешение учетной записи Data Lake Storage 2-го поколения.

Настройка конвейера фабрики данных для службы DICOM

В этом примере конвейер фабрики данных используется для записи атрибутов DICOM для экземпляров, рядов и исследований в учетной записи хранения в формате разностной таблицы.

В портал Azure откройте экземпляр Фабрики данных и выберите "Запустить студию", чтобы начать работу.

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

Создание связанных служб

Конвейеры фабрики данных считываются из источников данных и записываются в приемники данных, которые обычно являются другими службами Azure. Эти подключения к другим службам управляются как связанные службы.

Конвейер в этом примере считывает данные из службы DICOM и записывает выходные данные в учетную запись хранения, поэтому связанная служба должна быть создана для обоих.

Создание связанной службы для службы DICOM

  1. В Фабрика данных Azure Studio выберите "Управление" в меню слева. В разделе Подключение ions выберите связанные службы и нажмите кнопку "Создать".

    Screenshot that shows the Linked services screen in Data Factory.

  2. На панели "Новая связанная служба" найдите REST. Выберите плитку REST и нажмите кнопку "Продолжить".

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

  3. Введите имя и описание связанной службы.

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

  4. В поле "Базовый URL-адрес" введите URL-адрес службы для службы DICOM. Например, служба DICOM с именем contosoclinic в contosohealth рабочей области имеет URL-адрес https://contosohealth-contosoclinic.dicom.azurehealthcareapis.comслужбы.

  5. Для типа проверки подлинности выберите управляемое удостоверение, назначаемое системой.

  6. Для ресурса AAD введите https://dicom.healthcareapis.azure.com. Этот URL-адрес одинаков для всех экземпляров службы DICOM.

  7. После заполнения обязательных полей выберите "Проверить подключение" , чтобы убедиться, что роли удостоверения настроены правильно.

  8. При успешном выполнении теста подключения нажмите кнопку "Создать".

Создание связанной службы для Azure Data Lake Storage 2-го поколения

  1. В Студии фабрики данных выберите "Управление" в меню слева. В разделе Подключение ions выберите связанные службы и нажмите кнопку "Создать".

  2. На панели "Новая связанная служба" найдите Azure Data Lake Storage 2-го поколения. Выберите плитку Azure Data Lake Storage 2-го поколения и нажмите кнопку "Продолжить".

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

  3. Введите имя и описание связанной службы.

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

  4. Для типа проверки подлинности выберите управляемое удостоверение, назначаемое системой.

  5. Введите сведения о учетной записи хранения, введя URL-адрес учетной записи хранения вручную. Вы также можете выбрать подписку Azure и учетную запись хранения из раскрывающихся списков.

  6. После заполнения обязательных полей выберите "Проверить подключение" , чтобы убедиться, что роли удостоверения настроены правильно.

  7. При успешном выполнении теста подключения нажмите кнопку "Создать".

Создание конвейера для данных DICOM

Конвейеры фабрики данных — это коллекция действий , выполняющих задачу, например копирование метаданных DICOM в таблицы Delta. В этом разделе описывается создание конвейера, который регулярно синхронизирует данные DICOM с разностными таблицами в виде добавления, обновления и удаления из службы DICOM.

  1. Выберите "Автор" в меню слева. В области "Ресурсы фабрики" выберите знак плюса (+), чтобы добавить новый ресурс. Выберите "Конвейер" и выберите коллекцию шаблонов в меню.

    Screenshot that shows Template gallery selected under Pipeline.

  2. В коллекции шаблонов найдите DICOM. Выберите элемент Copy DICOM Metadata Changes to ADLS 2-го поколения в плитке Delta Format и нажмите кнопку "Продолжить".

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

  3. В разделе "Входные данные" выберите связанные службы, ранее созданные для службы DICOM и Data Lake Storage 2-го поколения учетной записи.

    Screenshot that shows the Inputs section with linked services selected.

  4. Выберите "Использовать этот шаблон " для создания нового конвейера.

Создание конвейера для данных DICOM

Если вы создали службу DICOM с помощью Azure Data Lake служба хранилища, необходимо использовать пользовательский шаблон для включения нового fileName параметра в конвейер метаданных. Вместо использования шаблона из коллекции шаблонов выполните следующие действия, чтобы настроить конвейер.

  1. Скачайте шаблон из GitHub. Файл шаблона — это сжатая (сжатая) папка. Вам не нужно извлекать файлы, так как они уже загружены в сжатой форме.

  2. В Фабрика данных Azure выберите "Автор" в меню слева. На панели "Ресурсы фабрики" выберите знак плюса (+), чтобы добавить новый ресурс. Выберите "Конвейер" и выберите "Импорт" из шаблона конвейера.

  3. В окне "Открыть" выберите скачанный шаблон. Выберите Открыть.

  4. В разделе "Входные данные" выберите связанные службы, созданные для службы DICOM, и Azure Data Lake Storage 2-го поколения учетной записи.

    Screenshot showing the Inputs section with linked services selected.

  5. Выберите "Использовать этот шаблон " для создания нового конвейера.

Создание расписания конвейера

Конвейеры запланированы триггерами. Существуют различные типы триггеров. Триггеры расписания позволяют запускать конвейеры по расписанию настенных часов, что означает, что они выполняются в определенное время суток, например каждый час или каждый день в полночь. Триггеры вручную активируют конвейеры по запросу, что означает, что они выполняются всякий раз, когда они нужны.

В этом примере триггер переворачивающегося окна используется для периодического запуска конвейера с учетом начальной точки и регулярного интервала времени. Дополнительные сведения об триггерах см. в разделе "Выполнение конвейера" и "триггеры" в Фабрика данных Azure или Azure Synapse Analytics.

Создание триггера переворачивающегося окна

  1. Выберите "Автор" в меню слева. Выберите конвейер для службы DICOM и выберите "Добавить триггер" и "Создать" или "Изменить" в строке меню.

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

  2. В области "Добавить триггеры" выберите раскрывающийся список "Выбрать триггер", а затем нажмите кнопку "Создать".

  3. Введите имя и описание триггера.

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

  4. Выберите "Переворачивающееся" окно в качестве типа.

  5. Чтобы настроить конвейер, который выполняется почасово, установите значение "Повторение " на 1 час.

  6. Разверните раздел "Дополнительно" и введите задержку в течение 15 минут. Этот параметр позволяет выполнять все ожидающие операции в конце часа перед обработкой.

  7. Задайте значение max concurrency равным 1 , чтобы обеспечить согласованность между таблицами.

  8. Нажмите кнопку "ОК ", чтобы продолжить настройку параметров запуска триггера.

Настройка параметров запуска триггера

Триггеры определяют время запуска конвейера. Они также включают параметры , передаваемые в выполнение конвейера. Изменение метаданных DICOM в шаблон Delta определяет несколько параметров, описанных в следующей таблице. Если значение во время настройки не задано, для каждого параметра используется указанное значение по умолчанию.

Наименование параметра Description Default value
BatchSize Максимальное количество изменений для получения за раз из канала изменений (максимум 200) 200
ApiVersion Версия API для службы Azure DICOM (минимум 2) 2
Время начала Инклюзивное время начала изменений DICOM 0001-01-01T00:00:00Z
EndTime Эксклюзивное время окончания для изменений DICOM 9999-12-31T23:59:59Z
ContainerName Имя контейнера для результирующей разностной таблицы dicom
InstanceTablePath Путь, содержащий таблицу Delta для экземпляров SOP DICOM в контейнере instance
SeriesTablePath Путь, содержащий таблицу Delta для серии DICOM в контейнере series
StudyTablePath Путь, содержащий таблицу Delta для исследований DICOM в контейнере study
RetentionHours Максимальное хранение в часах для данных в таблицах Delta 720
  1. В области параметров запуска триггера введите значение ContainerName, соответствующее имени контейнера хранилища, созданного в предварительных требованиях.

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

  2. Для StartTime используйте системную переменную @formatDateTime(trigger().outputs.windowStartTime).

  3. Для EndTime используйте системную переменную @formatDateTime(trigger().outputs.windowEndTime).

    Примечание.

    Только триггеры переворачивающегося окна поддерживают системные переменные:

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

    Триггеры планирования используют разные системные переменные:

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

    Дополнительные сведения о типах триггеров.

  4. Нажмите кнопку "Сохранить", чтобы создать новый триггер. Выберите "Опубликовать", чтобы начать запуск триггера в определенном расписании.

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

После публикации триггера его можно активировать вручную с помощью параметра Триггера . Если время начала было задано для значения в прошлом, конвейер запускается немедленно.

Мониторинг выполнений конвейера

Вы можете отслеживать запуски триггеров и связанные с ними конвейеры на вкладке "Монитор ". Здесь можно просмотреть время выполнения каждого конвейера и время его выполнения. Вы также можете отлаживать любые возникающие проблемы.

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

Microsoft Fabric

Fabric — это решение для аналитики с одним интерфейсом, которое находится на вершине Microsoft OneLake. Используя Lakehouse Fabric, вы можете управлять, структурировать и анализировать данные в OneLake в одном расположении. Любые данные за пределами OneLake, записанные в Data Lake Storage 2-го поколения, можно подключить к OneLake как сочетания клавиш, чтобы воспользоваться преимуществами набора инструментов Fabric.

Создание ярлыков для таблиц метаданных

  1. Перейдите к lakehouse, созданному в предварительных требованиях. В представлении Обозреватель выберите меню с многоточием (...) рядом с папкой "Таблицы".

  2. Выберите новый ярлык, чтобы создать ярлык для учетной записи хранения, содержащей данные аналитики DICOM.

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

  3. Выберите Azure Data Lake Storage 2-го поколения в качестве источника ярлыка.

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

  4. В разделе параметров Подключение ion введите URL-адрес, используемый в разделе связанных служб.

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

  5. Выберите существующее подключение или создайте новое подключение, выбрав тип проверки подлинности, который вы хотите использовать.

    Примечание.

    Существует несколько вариантов проверки подлинности между Data Lake Storage 2-го поколения и Fabric. Вы можете использовать учетную запись организации или субъект-службу. Мы не рекомендуем использовать ключи учетной записи или маркеры подписанного URL-адреса.

  6. Выберите Далее.

  7. Введите сочетание клавиш, представляющее данные, созданные конвейером фабрики данных. Например, для instance таблицы Delta имя ярлыка должно быть экземпляром.

  8. Введите вложенный путь, соответствующий ContainerName параметру из конфигурации параметров запуска, и имя таблицы для ярлыка. Например, используйте /dicom/instance для таблицы Delta путь instance в контейнере dicom .

  9. Нажмите кнопку "Создать", чтобы создать ярлык.

  10. Повторите шаги 2–9, чтобы добавить остальные сочетания клавиш в другие таблицы Delta в учетной записи хранения (например, series и study).

После создания ярлыков разверните таблицу, чтобы отобразить имена и типы столбцов.

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

Создание ярлыков для файлов

Если вы используете службу DICOM с Data Lake служба хранилища, можно также создать ярлык для данных DICOM, хранящихся в озере данных.

  1. Перейдите к lakehouse, созданному в предварительных требованиях. В представлении Обозреватель выберите меню с многоточием (...) рядом с папкой "Файлы".

  2. Выберите новый ярлык, чтобы создать ярлык для учетной записи хранения, содержащей данные DICOM.

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

  3. Выберите Azure Data Lake Storage 2-го поколения в качестве источника ярлыка.

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

  4. В разделе параметров Подключение ion введите URL-адрес, используемый в разделе связанных служб.

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

  5. Выберите существующее подключение или создайте новое подключение, выбрав тип проверки подлинности, который вы хотите использовать.

  6. Выберите Далее.

  7. Введите имя ярлыка, описывающее данные DICOM. Например, contoso-dicom-files.

  8. Введите вложенный путь, соответствующий имени контейнера хранилища и папки, используемой службой DICOM. Например, если вы хотите связаться с корневой папкой, вложенный путь будет /dicom/AHDS. Обратите внимание, что корневая папка всегда AHDSнаходится, но при необходимости можно связать с дочерней папкой для определенной рабочей области или экземпляра службы DICOM.

  9. Нажмите кнопку "Создать", чтобы создать ярлык.

Screenshot that shows the shortcut to the DICOM files.

Выполнение записных книжек

После создания таблиц в lakehouse их можно запросить из записных книжек Fabric. Записные книжки можно создавать непосредственно из lakehouse, выбрав "Открыть записную книжку " в строке меню.

На странице записной книжки содержимое lakehouse по-прежнему можно просмотреть на левой стороне, включая только что добавленные таблицы. В верхней части страницы выберите язык записной книжки. Язык также можно настроить для отдельных ячеек. В следующем примере используется Spark SQL.

Запрос таблиц с помощью Spark SQL

В редакторе ячеек введите SQL-запрос Spark, например инструкцию SELECT .

SELECT * from instance

Этот запрос выбирает все содержимое instance таблицы. Когда вы будете готовы, выберите "Выполнить ячейку ", чтобы запустить запрос.

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

Через несколько секунд результаты запроса отображаются в таблице под ячейкой, как показано здесь. Время может быть дольше, если этот запрос Spark является первым в сеансе, так как контекст Spark необходимо инициализировать.

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

Доступ к данным файла DICOM в записных книжках

Если вы использовали шаблон для создания конвейера и создали ярлык для данных файла DICOM, можно использовать filePath столбец в instance таблице для сопоставления метаданных экземпляра с данными файла.

SELECT sopInstanceUid, filePath from instance

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

Итоги

Из этой статьи вы узнали, как выполнять следующие задачи:

  • Используйте шаблоны фабрики данных для создания конвейера из службы DICOM в учетную запись Data Lake Storage 2-го поколения.
  • Настройте триггер для извлечения метаданных DICOM в почасовом расписании.
  • Используйте сочетания клавиш для подключения данных DICOM в учетной записи хранения к Lakehouse Fabric.
  • Используйте записные книжки для запроса данных DICOM в lakehouse.

Следующие шаги

Примечание.

DICOM® является зарегистрированным товарным знаком Национальной ассоциации производителей электрических технологий для публикаций по стандартам, касающихся цифровых коммуникаций медицинской информации.