Поделиться через


Руководство по настройке зеркальных баз данных Microsoft Fabric из Azure SQL Managed Instance

Зеркальное отображение в Fabric — это корпоративная облачная технология SaaS без использования ETL. В этом разделе вы узнаете, как создать зеркальную базу данных Azure SQL Managed Instance, которая представляет собой только для чтения реплицированную копию выбранной базы данных из Azure SQL Managed Instance в OneLake.

Предпосылки

  • Создайте или используйте существующую Azure SQL Managed Instance. Проверьте ограничения.
  • Исходный Azure SQL Managed Instance может быть либо одним управляемым экземпляром SQL, либо управляемым экземпляром SQL, принадлежащим пулу экземпляров.
  • Для использования Fabric требуется имеющаяся мощность. Если вы этого не сделали, запустите пробную версию Fabric.
    • Вместимость Fabric должна быть активной и находиться в рабочем состоянии. Приостановленная или удалённая емкость ресурса влияет на зеркалирование, данные не реплицируются.
  • Необходимы параметры клиента Fabric. Убедитесь, что включены следующие два параметра клиента Fabric :
  • При создании зеркальной базы данных на портале Fabric необходимо иметь роль участника или администратора в рабочей области. Во время создания управляемому удостоверению Azure SQL Managed Instance автоматически предоставляется разрешение "Чтение и запись" на зеркальной базе данных. У пользователей с ролью участника нет разрешения повторного доступа, необходимого для выполнения этого шага.
  • Проверьте требования к сети для Fabric, чтобы получить доступ к Azure SQL Managed Instance:
    • Если Azure SQL Managed Instance не является общедоступным, создайте шлюз данных виртуальной сети<>/c0> или локальный шлюз данных для зеркального отображения данных. Убедитесь, что сеть Azure Virtual Network или сети сервера шлюза могут подключаться к Azure SQL Managed Instance через частную конечную точку.
    • Если вы хотите подключиться к общедоступной конечной точке Azure SQL Managed Instance без шлюза данных, необходимо разрешить входящий трафик из тегов службы Power BI и фабрики данных или из тега облачной службы Azure в группе безопасности сети. Узнайте больше о общедоступных конечных точках Configure в Azure SQL Managed Instance.
  • Проверьте требования к сети для Fabric: если вы хотите использовать приватный канал уровня рабочей области, следуйте инструкциям, чтобы создать службу приватного канала в Azure и создать частную конечную точку из виртуальной сети и подсети Azure SQL Managed Instance.

Включите управляемое удостоверение (SAMI), назначаемое системой для вашего экземпляра Azure SQL Managed Instance.

Управляемое удостоверение системы (System Assigned Managed Identity, SAMI) вашей Azure SQL Managed Instance должно быть включено и являться основным удостоверением для публикации данных в Fabric OneLake.

  1. Чтобы настроить или убедиться, что SAMI включен, перейдите к SQL Managed Instance на портале Azure. В разделе "Безопасность " в меню ресурсов выберите "Удостоверение".
  2. В разделе Управляемое удостоверение, назначаемое системой, выберите «Состояние» и переведите в положение Вкл..
  3. SAMI должен быть основным удостоверением. Убедитесь, что SAMI является основным удостоверением с помощью следующего запроса T-SQL: SELECT * FROM sys.dm_server_managed_identities;

Принципал базы данных для Fabric

Затем необходимо создать способ подключения службы Fabric к Azure SQL Managed Instance.

Это можно сделать с помощью логина и сопоставленного пользователя базы данных. Следуя принципу наименьших привилегий для безопасности, необходимо предоставлять права только на CONTROL DATABASE в базе данных, которую вы планируете зеркалировать.

Использование имени входа и сопоставленного пользователя базы данных

  1. Подключитесь к Azure SQL Managed Instance с помощью расширения SQL Server Management Studio (SSMS) или расширения MSSQL для Visual Studio Code. Подключитесь к master базе данных.

  2. Создайте имя входа сервера и назначьте соответствующие разрешения.

    Разрешения, необходимые для входа в Fabric, :

    • Следующие разрешения в пользовательской базе данных:

      • SELECT
      • ИЗМЕНЕНИЕ ЛЮБОГО ВНЕШНЕГО ЗЕРКАЛА
      • ПРОСМОТР СОСТОЯНИЯ ПРОИЗВОДИТЕЛЬНОСТИ БАЗЫ ДАННЫХ
      • ПРОСМОТР СОСТОЯНИЯ БЕЗОПАСНОСТИ БАЗЫ ДАННЫХ
    • Создайте логин с аутентификацией SQL. Вы можете выбрать любое имя для этого логина и заменить его в следующем скрипте на <fabric_login>. Укажите собственный надежный пароль. Выполните следующий скрипт T-SQL в master базе данных:

    CREATE LOGIN <fabric_login> WITH PASSWORD = '<strong password>';
    
    • Или создайте аутентифицированный вход с помощью Microsoft Entra ID из существующей учетной записи. Выполните следующий скрипт T-SQL в master базе данных:
    CREATE LOGIN [bob@contoso.com] FROM EXTERNAL PROVIDER;
    
  3. Переключите область запроса на базу данных, которую вы хотите отзеркалить. Замените имя базы данных <mirroring_source_database> и выполните следующую команду T-SQL:

    USE [<mirroring_source_database>];
    
  4. Создайте пользователя базы данных, связанного с логином. Замените имя нового пользователя базы данных для этой цели следующим текстом <fabric_user>:

    CREATE USER [fabric_user] FOR LOGIN [fabric_login];
    GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW DATABASE PERFORMANCE STATE, VIEW DATABASE SECURITY STATE TO [fabric_user];
    
    • Или для аутентифицированного входа Microsoft Entra:
    CREATE USER [bob@contoso.com] FOR LOGIN [bob@contoso.com];
    GRANT SELECT, ALTER ANY EXTERNAL MIRROR, VIEW DATABASE PERFORMANCE STATE, VIEW DATABASE SECURITY STATE TO [bob@contoso.com];
    

Создание зеркальной базы данных Azure SQL Managed Instance

  1. Откройте портал «Fabric».
  2. Используйте существующую рабочую область или создайте новую рабочую область.
  3. Перейдите в панель Создания. Щелкните значок "Создать".
  4. Прокрутите страницу до раздела Data Warehouse и выберите Зеркалированный управляемый экземпляр Azure SQL.

Подключение к Azure SQL Managed Instance

Чтобы включить зеркальное отображение, необходимо подключиться к Azure SQL Managed Instance из Fabric, чтобы инициировать подключение между SQL Managed Instance и Fabric. Ниже приведены инструкции по созданию подключения к Azure SQL Managed Instance.

  1. В меню New sources выберите Azure SQL Managed Instance. Или выберите существующее Azure SQL Managed Instance подключение из каталога OneLake.
    1. Нельзя использовать существующие подключения Azure SQL Managed Instance с типом "SQL Server" (универсальный тип подключения). Для зеркального отображения данных Azure SQL Managed Instance поддерживаются только подключения с типом подключения "SQL Managed Instance".
  2. Если выбрано подключение New, введите сведения о подключении к Azure SQL Managed Instance. Необходимо подключиться к определенной базе данных, вы не можете настроить зеркальное отображение для всего управляемого экземпляра SQL и всех ее баз данных.
    • Сервер: Вы можете найти имя сервера, перейдя на страницу Сетевое взаимодействие в портале Azure (в меню "Безопасность") и посмотрев поле Публичная конечная точка. Например: <managed_instance_name>.public.<dns_zone>.database.windows.net,3342.
    • База данных: введите имя базы данных, которую вы хотите зеркально отражать.
    • Подключение: создание нового подключения.
    • Имя подключения: автоматическое имя предоставляется. Вы можете изменить его, чтобы упростить поиск подключения к базе данных управляемого экземпляра SQL в будущем, если это необходимо.
    • Шлюз данных: выберите значение по умолчанию (Нет) или имя шлюза данных виртуальной сети или локального шлюза данных, настроенного в соответствии с вашим сценарием.
    • Тип проверки подлинности:
      • Базовый (проверка подлинности SQL): укажите имя пользователя и пароль.
      • Учетная запись организации (Microsoft Entra ID)
      • Субъект-служба: укажите идентификатор клиента, идентификатор клиента и секрет клиента субъекта-службы.
  3. Нажмите Подключиться.

Запуск процесса зеркалирования

  1. Экран "Настройка зеркального отображения" позволяет зеркально отображать все данные в базе данных по умолчанию.

    • Зеркальное отображение всех данных означает, что все новые таблицы, созданные после запуска зеркального отображения, будут зеркально отображаться.

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

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

    В этом руководстве мы выбираем параметр "Зеркальное отображение всех данных ".

  2. На следующем экране присвойте целевому элементу имя и выберите "Создать зеркальную базу данных". Теперь подождите минуту или две, чтобы Fabric подготовил все для вас.

  3. Через 2–5 минут выберите "Монитор репликации ", чтобы просмотреть состояние.

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

    Если таблицы и соответствующее состояние репликации не отображаются, подождите несколько секунд и обновите панель.

  5. После завершения первоначальной копирования таблиц дата появится в столбце последнего обновления .

  6. Теперь, когда ваши данные работают в полном объёме, доступны различные сценарии аналитики по всему Fabric.

Это важно

Все детализированные средства безопасности, установленные в исходной базе данных, должны быть перенастроены в зеркальной базе данных в Microsoft Fabric.

Мониторинг зеркального отображения структуры

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

Ниже приведены состояния репликации:

  • Для общего мониторинга уровня базы данных:

    • Выполнение — репликация в настоящее время выполняется, доставляя моментальные снимки и измененные данные в OneLake.
    • Выполнение с предупреждением: выполняется репликация с переменными ошибками
    • Остановка/Остановлено — репликация остановлена.
    • Ошибка — неустранимая ошибка в репликации, которая не может быть восстановлена.
  • Для мониторинга на уровне таблицы:

    • В процессе: данные из таблицы успешно передаются в хранилище.
    • Выполнение с предупреждением — предупреждение о нефатальной ошибке при репликации данных из таблицы
    • Остановка/Остановлено — репликация остановлена
    • Ошибка — неустранимая ошибка репликации для этой таблицы.

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

Кроме того, обратите внимание на столбец Строки, реплицированные. Он подсчитывает все строки, реплицированные для таблицы. Каждый раз, когда реплицируется строка, она учитывается снова. Это означает, что, например, вставка строки с первичным ключом =1 в источнике увеличивает число реплицированных строк на один. Если вы обновите строку с тем же первичным ключом, она снова будет реплицирована в Fabric, и количество строк увеличится на один, даже если это та же самая строка, повторно реплицированная. Структура подсчитывает все репликации, которые произошли в строке, включая вставки, удаления, обновления.

Экран мониторинга репликации также отображает все ошибки и предупреждения, связанные с зеркальными таблицами. Если в таблице нет неподдерживаемых типов столбцов или если вся таблица не поддерживается (например, в индексах памяти или columnstore), на этом экране отображается уведомление об ограничении. Для получения дополнительной информации и подробностей о состояниях репликации см. раздел Мониторинг зеркальной репликации баз данных в Fabric.