Руководство по настройке зеркальной базы данных Microsoft Fabric для Azure Cosmos DB

В этом руководстве вы настроите зеркальную базу данных Fabric из существующей учетной записи Azure Cosmos DB для NoSQL.

Зеркальное отображение инкрементально реплицирует данные Azure Cosmos DB в Fabric OneLake практически в реальном времени, не влияя на производительность транзакционных рабочих нагрузок и не потребляя единицы запросов (RU). Вы можете создавать отчеты Power BI непосредственно на данных в OneLake с помощью режима DirectLake. Вы можете выполнять ad hoc-запросы в SQL или Spark, создавать модели данных с помощью записных книжек и использовать встроенные Copilot и расширенные возможности искусственного интеллекта в Fabric для анализа данных.

Предпосылки

Подсказка

Рекомендуется использовать тестовую копию или копию для разработки существующих данных Azure Cosmos DB, которые можно быстро восстановить из резервной копии.

Настройка учетной записи Azure Cosmos DB

Сначала убедитесь, что исходная учетная запись Azure Cosmos DB правильно настроена для использования с зеркальным отображением Fabric.

  1. Перейдите к учетной записи Azure Cosmos DB на портале Azure.

  2. Убедитесь, что включено непрерывное резервное копирование. Если она не включена, выполните инструкции по переносу существующей учетной записи Azure Cosmos DB на непрерывное резервное копирование, чтобы включить непрерывное резервное копирование. Эта функция может быть недоступна в некоторых сценариях. Дополнительные сведения см. в разделе об ограничениях базы данных и учетных записей.

  3. Если учетная запись Azure Cosmos DB использует виртуальные сети или частные конечные точки, необходимо настроить обход сетевого списка ACL, чтобы разрешить рабочей области Fabric доступ к учетной записи. Для получения дополнительной информации см. Настройка зеркалирования для учетных записей Azure Cosmos DB с сетевыми ограничениями. Если учетная запись настроена для доступа к общедоступной сети для всех сетей, перейдите к следующему разделу.

Создать зеркальную базу данных

Теперь создайте зеркальную базу данных, которая является целевой базой данных для реплицируемых данных. Дополнительные сведения см. в разделе Что ожидать от зеркального отображения.

  1. Перейдите на главную страницу портала Fabric.

  2. Откройте существующую рабочую область или создайте новую рабочую область.

  3. В меню навигации выберите Создать.

  4. Выберите "Создать", найдите раздел "Хранилище данных " и выберите "Зеркальное отображение Azure Cosmos DB".

  5. Укажите имя зеркальной базы данных и нажмите кнопку Создать.

Подключиться к исходной базе данных

Затем подключите исходную базу данных к зеркальной базе данных.

  1. В разделе Новое подключение выберите Azure Cosmos DB для NoSQL.

  2. Укажите учетные данные для учетной записи Azure Cosmos DB для NoSQL, включая следующие элементы:

    Учетные данные Ценность
    Конечная точка Azure Cosmos DB Конечная точка URL-адреса для исходной учетной записи.
    Имя подключения Уникальное имя подключения.
    Тип проверки подлинности Выберите ключ учетной записи или учетную запись организации.
    Ключ учетной записи Ключ чтения и записи для исходной учетной записи.
    Учетная запись организации Токен доступа из Microsoft Entra ID.

    Снимок экрана: диалоговое окно нового подключения с учетными данными для учетной записи Azure Cosmos DB для NoSQL.

    Замечание

    Для аутентификации Microsoft Entra ID требуются следующие разрешения RBAC:

    • Microsoft.DocumentDB/databaseAccounts/readMetadata
    • Microsoft.DocumentDB/databaseAccounts/readAnalytics

    Дополнительные сведения см. в документации по управлению доступом на основе ролей плоскости данных.

    Пример скрипта для автоматического применения настраиваемой роли управления доступом на основе ролей см. в разделе rbac-cosmos-mirror.sh на странице azure-samples/azure-cli-samples.

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

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

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

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

  3. Через несколько минут состояние должно измениться на Запущено, указывая на то, что контейнеры синхронизируются.

    Подсказка

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

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

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

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

  1. После настройки Fabric Mirroring вас автоматически перенаправляют на панель Состояние репликации.

  2. Здесь отслеживайте текущее состояние репликации. Для получения дополнительной информации и подробностей о состояниях репликации см. раздел Мониторинг зеркальной репликации баз данных в Fabric.

Запросите исходную базу данных из Fabric

Используйте портал Fabric для изучения данных, которые уже существуют в вашей учетной записи Azure Cosmos DB, путем выполнения запросов к исходной базе данных Cosmos DB.

  1. Перейдите к зеркальной базе данных на портале Fabric.

  2. Выберите Вид, затем Исходная база данных. Это действие открывает обозреватель данных Azure Cosmos DB с представлением только для чтения исходной базы данных.

    Снимок экрана: обозреватель данных с представлением только для чтения данных NoSQL в учетной записи Azure Cosmos DB.

  3. Выберите контейнер, а затем откройте контекстное меню и выберите новый SQL-запрос.

  4. Запустите любой запрос. Например, используйте SELECT COUNT(1) FROM container для подсчета количества элементов в контейнере.

    Замечание

    Все операции чтения в исходной базе данных направляются в Azure и используют единицы запросов (ЕЗ), выделенные в учетной записи.

Проанализируйте целевую зеркальную базу данных

Теперь используйте T-SQL для выполнения запросов к вашим данным NoSQL, которые теперь хранятся в Fabric OneLake.

  1. Перейдите к зеркальной базе данных на портале Fabric.

  2. Переключитесь с зеркального отображения Azure Cosmos DB на конечную точку аналитики SQL.

    Снимок экрана: селектор для переключения между элементами на портале Fabric.

  3. Каждый контейнер в исходной базе данных должен быть представлен в конечной точке аналитики SQL в виде таблицы в хранилище данных.

  4. Выберите любую таблицу, откройте контекстное меню, а затем выберите Создать запрос, и, наконец, выберите Выбрать первые 1000 строк.

  5. Запрос выполняется и возвращает 100 записей в выбранной таблице.

  6. Откройте контекстное меню для той же таблицы и выберите новый SQL-запрос. Напишите пример запроса, использующего агрегаты, такие как SUM, COUNTMINили MAX. Объедините несколько таблиц в хранилище, чтобы выполнить запрос в нескольких контейнерах.

    Замечание

    Например, этот запрос будет выполняться в нескольких контейнерах:

    SELECT
        d.[product_category_name],
        t.[order_status],
        c.[customer_country],
        s.[seller_state],
        p.[payment_type],
        sum(o.[price]) as price,
        sum(o.[freight_value]) freight_value 
    FROM
        [dbo].[products] p 
    INNER JOIN
        [dbo].[OrdersDB_order_payments] p 
            on o.[order_id] = p.[order_id] 
    INNER JOIN
        [dbo].[OrdersDB_order_status] t 
            ON o.[order_id] = t.[order_id] 
    INNER JOIN
        [dbo].[OrdersDB_customers] c 
            on t.[customer_id] = c.[customer_id] 
    INNER JOIN
        [dbo].[OrdersDB_productdirectory] d 
            ON o.product_id = d.product_id 
    INNER JOIN
        [dbo].[OrdersDB_sellers] s 
            on o.seller_id = s.seller_id 
    GROUP BY
        d.[product_category_name],
        t.[order_status],
        c.[customer_country],
        s.[seller_state],
        p.[payment_type]
    

    В этом примере используются названия вашей таблицы и столбцов. При написании SQL-запроса используйте собственную таблицу и столбцы.

  7. Выберите запрос и нажмите кнопку Сохранить как представление. Присвойте представлению уникальное имя. Вы можете получить доступ к этому представлению в любое время на портале Fabric.

  8. Вернитесь к зеркальной базе данных на портале Fabric.

  9. Выберите новый визуальный запрос. Используйте редактор запросов для создания сложных запросов.

    Снимок экрана: редактор запросов для текстовых и визуальных запросов в Fabric.

Создавайте BI-отчеты на основе SQL-запросов или представлений

  1. Выберите запрос или представление, а затем выберите «Исследовать эти данные (предварительная версия)». Это действие позволяет исследовать запрос в Power BI непосредственно с помощью Direct Lake на зеркальных данных в OneLake.
  2. Измените диаграммы по мере необходимости и сохраните отчет.

Подсказка

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

Дополнительные примеры

Дополнительные сведения о доступе и запросе зеркальных данных Azure Cosmos DB в Fabric: