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

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

Предпосылки

Настройка Cosmos DB в базе данных Fabric

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

  1. Откройте портал Fabric (https://app.fabric.microsoft.com).

  2. Перейдите к существующей базе данных Cosmos DB.

    Это важно

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

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

  4. В строке меню выберите "Параметры" , чтобы получить доступ к конфигурации базы данных.

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

    Замечание

    Зеркальное отображение автоматически включается для всех баз данных Cosmos DB в Fabric. Эта функция не требует дополнительной настройки и гарантирует, что данные всегда готовы к анализу в OneLake.

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

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

  1. Вернитесь к существующей базе данных Cosmos DB на портале Fabric.

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

  3. Выберите элементы для просмотра данных непосредственно в базе данных.

  4. Убедитесь, что можете видеть элементы в контейнере. Например, при использовании примера набора данных должны отображаться элементы со свойствами, такими как name, categoryи countryOfOrigin.

  5. Выберите "Создать запрос " в меню, чтобы открыть редактор запросов NoSQL.

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

    SELECT COUNT(1) AS itemCount FROM container
    

    Этот запрос должен возвращать общее количество элементов в контейнере.

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

Теперь перейдите к зеркальной версии базы данных через конечную точку аналитики SQL, чтобы запросить те же данные с помощью T-SQL.

  1. В строке меню выберите список Cosmos DB и выберите конечную точку аналитики SQL , чтобы перейти в зеркальное представление базы данных.

  2. Убедитесь, что контейнер отображается в виде таблицы в конечной точке аналитики SQL. Таблица должна иметь то же имя, что и контейнер.

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

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

    SELECT COUNT(*) AS itemCount FROM [dbo].[SampleData]
    

    Замечание

    Замените [SampleData] именем контейнера, если вы не используете пример набора данных.

  5. Запрос должен возвращать то же количество, что и запрос NoSQL, подтверждая, что зеркальное отображение успешно реплицирует ваши данные.

Запрос исходной базы данных из 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. Выберите любую таблицу, откройте контекстное меню, а затем выберите новый SQL-запрос и, наконец, выберите "Сверху 100".

  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.

Создание отчетов бизнес-аналитики в запросах ИЛИ представлениях SQL

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

Подсказка

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