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

Служба FHIR поддерживает $import операцию, которая позволяет импортировать данные в службу FHIR из учетной записи хранения. Импорт разделяет входные файлы в несколько потоков данных для оптимальной производительности и не гарантирует порядок обработки ресурсов. На сегодняшний день поддерживаются два режима $import:

  • Начальный режим предназначен для загрузки ресурсов FHIR на пустой сервер FHIR. Начальный режим поддерживает только операции CREATE и, если этот параметр включен, блокирует операции записи API на сервер FHIR.

  • Добавочный режим оптимизирован для периодической загрузки данных на сервер FHIR и не блокирует операции записи через API. Он также позволяет загружать lastUpdated и versionId из мета ресурса (если он присутствует в json ресурса).

В этом документе мы рассмотрим три шага, которые используются при настройке параметров импорта в службе FHIR:

  1. Включите управляемое удостоверение в службе FHIR.
  2. Создайте учетную запись хранения Azure или используйте существующую учетную запись хранения, а затем предоставьте службе FHIR разрешения на доступ к ней.
  3. Задайте конфигурацию импорта в службе FHIR.

Шаг 1. Включение управляемого удостоверения в службе FHIR

Первым шагом является включение управляемого удостоверения на уровне системы в службе. Он будет использоваться для предоставления службе FHIR доступа к учетной записи хранения. Дополнительные сведения об управляемых удостоверениях в Azure см. в статье Об управляемых удостоверениях для ресурсов Azure.

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

  1. Перейдите к службе FHIR в портал Azure.
  2. Выберите колонку Удостоверение .
  3. Выберите для параметра Состояние значение Вкл . , а затем нажмите кнопку Сохранить.
  4. Выберите Да , чтобы включить управляемое удостоверение для службы FHIR.

После включения удостоверения системы вы увидите значение GUID, назначенное системой.

Включение управляемого удостоверения

Шаг 2. Назначение разрешений службе FHIR на доступ к учетной записи хранения

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

  1. Перейдите к контроль доступа (IAM) в учетной записи хранения.
  2. Выберите Добавить назначение ролей. Если на этом шаге параметр добавить назначение ролей неактивен, необходимо попросить администратора Azure назначить вам разрешение на выполнение этого шага. Дополнительные сведения о назначении ролей в портал Azure см. в статье Встроенные роли Azure.
  3. Добавьте роль Участник данных BLOB-объектов хранилища в службу FHIR.
  4. Щелкните Сохранить.

Снимок экрана: страница

Теперь все готово к выбору учетной записи хранения для импорта.

Шаг 3. Настройка конфигурации импорта службы FHIR

Примечание

Если вы не назначили службе FHIR разрешения на доступ к хранилищу, операции импорта ($import) завершатся ошибкой.

Для этого шага необходимо получить URL-адрес запроса и текст JSON. Следуйте указаниям ниже

  1. Перейдите к портал Azure службы FHIR.
  2. Щелкните Обзор.
  3. Выберите Представление JSON.
  4. Выберите версию API до 2022-06-01 или более поздней версии.

Чтобы указать учетную запись хранения Azure в представлении JSON, необходимо использовать REST API для обновления службы FHIR. Снимок экрана: получение представления JSON

Ниже приведены инструкции по настройке конфигураций для начального и добавочного режима импорта. Выберите правильный режим импорта для вашего варианта использования.

Шаг 3а. Настройка конфигурации импорта для режима начального импорта.

Выполните следующие изменения в JSON:

  1. Присвойте параметру enabled в importConfiguration значение true.
  2. Обновите integrationDataStore, указав имя целевой учетной записи хранения.
  3. Задайте для параметра initialImportMode в importConfiguration значение true.
  4. Удалите provisioningState.

Снимок экрана: пример кода конфигурации импорта

Завершив этот последний шаг, вы можете выполнить импорт в исходном режиме с помощью $import.

Шаг 3б. Настройка конфигурации импорта для режима добавочного импорта.

Выполните следующие изменения в JSON:

  1. Присвойте параметру enabled в importConfiguration значение true.
  2. Обновите integrationDataStore, указав имя целевой учетной записи хранения.
  3. Задайте для параметра initialImportMode в importConfiguration значение false.
  4. Удалите provisioningState.

После завершения этого последнего шага можно приступать к импорту в добавочном режиме с помощью $import.

Обратите внимание, что вы также можете использовать кнопку Развернуть в Azure, чтобы открыть пользовательский шаблон Resource Manager, который обновляет конфигурацию для $import.

Кнопка развертывания в Azure.

Защита операции $import службы FHIR

Для безопасного импорта данных FHIR в службу FHIR из учетной записи ADLS 2-го поколения существует два варианта:

  • Вариант 1. Включение службы FHIR в качестве доверенной службы Майкрософт.

  • Вариант 2. Предоставление доступа к учетной записи хранения для определенных IP-адресов, связанных со службой FHIR. Этот параметр позволяет использовать две разные конфигурации в зависимости от того, находится ли учетная запись хранения в том же регионе Azure, что и служба FHIR.

Вариант 1. Включение службы FHIR в качестве доверенной службы Майкрософт.

Перейдите к своей учетной записи ADLS 2-го поколения в портал Azure и выберите колонку Сеть. Выберите Включено из выбранных виртуальных сетей и IP-адресов на вкладке Брандмауэры и виртуальные сети .

Снимок экрана: параметры сети службы хранилища Azure.

Выберите Microsoft.HealthcareApis/workspaces в раскрывающемся списке Тип ресурса , а затем выберите свою рабочую область в раскрывающемся списке Имя экземпляра .

В разделе Исключения установите флажок Разрешить службам Azure в списке доверенных служб доступ к этой учетной записи хранения. Не забудьте нажать кнопку Сохранить , чтобы сохранить параметры.

Снимок экрана: предоставление доверенным службам Майкрософт доступа к этой учетной записи хранения.

Затем выполните следующую команду PowerShell, чтобы установить Az.Storage модуль PowerShell в локальной среде. Это позволит настроить учетные записи хранения Azure с помощью PowerShell.

Install-Module Az.Storage -Repository PsGallery -AllowClobber -Force 

Теперь используйте приведенную ниже команду PowerShell, чтобы задать выбранный экземпляр службы FHIR в качестве доверенного ресурса для учетной записи хранения. Убедитесь, что все перечисленные параметры определены в среде PowerShell.

Обратите внимание, что в локальной Add-AzStorageAccountNetworkRule среде необходимо выполнить команду от имени администратора. Дополнительные сведения см. в статье Настройка брандмауэров службы хранилища Azure и виртуальных сетей.

$subscription="xxx"
$tenantId = "xxx"
$resourceGroupName = "xxx"
$storageaccountName = "xxx"
$workspacename="xxx"
$fhirname="xxx"
$resourceId = "/subscriptions/$subscription/resourceGroups/$resourceGroupName/providers/Microsoft.HealthcareApis/workspaces/$workspacename/fhirservices/$fhirname"

Add-AzStorageAccountNetworkRule -ResourceGroupName $resourceGroupName -Name $storageaccountName -TenantId $tenantId -ResourceId $resourceId

После выполнения приведенной выше команды в разделе Брандмауэр в разделе Экземпляры ресурсов в раскрывающемся списке Имя экземпляра будет выбрано 2. Это имена экземпляра рабочей области и экземпляра службы FHIR, зарегистрированных в качестве доверенных ресурсов Майкрософт.

Снимок экрана: параметры сети службы хранилища Azure с типом ресурса и именами экземпляров.

Теперь вы готовы безопасно импортировать данные FHIR из учетной записи хранения. Учетная запись хранения находится в выбранных сетях и не является общедоступной. Для безопасного доступа к файлам можно включить частные конечные точки для учетной записи хранения.

Вариант 2.

Предоставление доступа к учетной записи хранения Azure определенным IP-адресам из других регионов Azure

В портал Azure перейдите к учетной записи ADLS 2-го поколения и выберите колонку Сеть.

Выберите Включено из выбранных виртуальных сетей и IP-адресов. В разделе Брандмауэр укажите IP-адрес в поле Диапазон адресов . Добавьте диапазоны IP-адресов, чтобы разрешить доступ из Интернета или локальных сетей. IP-адрес можно найти в таблице ниже для региона Azure, в котором подготовлена служба FHIR.

Регион Azure Общедоступный IP-адрес
Восточная Австралия 20.53.44.80
Центральная Канада 20.48.192.84
Центральная часть США 52.182.208.31
Восточная часть США 20.62.128.148
восточная часть США 2 20.49.102.228
Восточная часть США 2 (EUAP) 20.39.26.254
Северная Германия 51.116.51.33
Центрально-Западная Германия 51.116.146.216
Восточная Япония 20.191.160.26
Республика Корея, центральный регион 20.41.69.51
Центрально-северная часть США 20.49.114.188
Северная Европа 52.146.131.52
Северная часть ЮАР; 102.133.220.197
Центрально-южная часть США 13.73.254.220
Southeast Asia 23.98.108.42
Северная Швейцария 51.107.60.95
южная часть Соединенного Королевства 51.104.30.170
западная часть Соединенного Королевства 51.137.164.94
центрально-западная часть США 52.150.156.44
Западная Европа 20.61.98.66
западная часть США 2 40.64.135.77

Разрешение определенным IP-адресам доступа к учетной записи хранения Azure в том же регионе

Процесс настройки IP-адресов в том же регионе выглядит так же, как описано выше, за исключением определенного диапазона IP-адресов Inter-Domain в формате CIDR (т. е. 100.64.0.0/10). Необходимо указать диапазон IP-адресов (100.64.0.0 –100.127.255.255), так как IP-адрес для службы FHIR будет выделяться при каждом выполнении запроса операции.

Примечание

Возможно, используется частный IP-адрес в диапазоне 10.0.2.0/24, но нет никакой гарантии, что операция будет выполнена успешно. Вы можете повторить попытку в случае сбоя запроса операции, но пока не будет использован IP-адрес в диапазоне 100.64.0.0/10, запрос не будет выполнен. Это поведение сети для диапазонов IP-адресов является конструктивным. Вместо этого можно настроить учетную запись хранения в другом регионе.

Дальнейшие действия

Из этой статьи вы узнали, как служба FHIR поддерживает $import операции и позволяет импортировать данные в службу FHIR из учетной записи хранения. Вы также узнали о трех шагах, используемых при настройке параметров импорта в службе FHIR. Дополнительные сведения о преобразовании данных в FHIR, экспорте параметров для настройки учетной записи хранения и перемещении данных в Azure Synapse см. в статье.

FHIR® является зарегистрированным товарным знаком HL7 и используется с разрешения HL7.