Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом быстром старте вы используете три движка Fabric для взаимодействия с одной и той же таблицей Lakehouse. Сначала вы задаёте запросы к таблице, используя SQL analytics endpoint. Затем вы строите отчёт Power BI в режиме Direct Lake поверх той же таблицы. Наконец, вы считываете ту же таблицу из ноутбука Spark. Вместе эти шаги показывают основной шаблон OneLake: одна копия данных, несколько движков.
OneLake хранит табличные данные в открытом формате Delta Parquet поверх Azure Data Lake Storage (ADLS) Gen2. Эта общая основа позволяет разным движкам Fabric работать с одними и теми же данными без необходимости перемещать их или форматировать под каждый опыт. Инструменты и сервисы, поддерживающие ADLS Gen2, такие как Azure Databricks, Azure Synapse Analytics и кастомные приложения, также могут получать те же данные извне Fabric.
Необходимые условия
- Лицензия Fabric. Или зарегистрируйте бесплатную пробную версию Fabric.
- Рабочее пространство Fabric с назначенной ёмкостью.
- Дом у озера, содержащий
dim_productsтаблицу из предыдущего быстрого запуска — Quickstart: Загрузка данных в OneLake.
Запросите таблицу с помощью SQL analytics endpoint
Каждый lakehouse автоматически получает конечную точку аналитики SQL. Конечная точка читает данные напрямую из таблиц Delta в OneLake, так что вы можете запускать T-SQL запросы к вашим данным Lakehouse, не копируя их в отдельное хранилище SQL.
В портале Fabric откройте рабочее пространство, в котором находится ваш дом на озере, и выберите домик на озере.
В правом верхнем углу lakehouse выберите в раскрывающемся списке Анализировать данные с помощью>конечной точки аналитики SQL, чтобы переключиться на конечную точку аналитики SQL этого же элемента.
В меню конечной точки аналитики SQL выберите Новый SQL-запрос.
В редакторе запросов выполните следующий запрос по
dim_productsтаблице:Этот запрос группируется по категориям и подкатегориям, чтобы показать количество товаров и среднюю цену.
SELECT category, subcategory, COUNT(*) AS products, ROUND(AVG(standard_price), 2) AS avg_price FROM ( SELECT product_id, category, subcategory, standard_price, ROW_NUMBER() OVER ( PARTITION BY product_id ORDER BY from_date DESC ) AS rn FROM dbo.dim_products ) latest WHERE rn = 1 GROUP BY category, subcategory ORDER BY avg_price DESC;Просмотрите результаты в панели вывода запроса.
Вы выполнили запрос к таблице, не перемещая и не дублируя её. Конечная точка аналитики SQL читает те же файлы Delta в OneLake, что и Lakehouse.
Постройте отчёт Power BI в режиме Direct Lake
Direct Lake — это режим хранения Power BI, который считывает таблицы Delta из OneLake, поэтому семантическая модель может предоставлять отчёты без импорта или дублирования данных. Direct Lake имеет два режима, в обоих случаях данные считываются из OneLake: Direct Lake on OneLake и Direct Lake on SQL. Они различаются тем, как семантическая модель обнаруживает таблицы и применяет права доступа. Поскольку этот быстрый старт начинается с конечной точки аналитики SQL, поток создаёт семантическую модель Direct Lake on SQL .
В этом разделе вы строите семантическую модель и простой отчёт на одной и той же dim_products таблице.
В представлении отчёта показана средняя цена товара в разрезе category, при этом каждый столбец разбит по subcategory.
В меню конечной точки SQL-аналитики выберите Новую семантическую модель.
Введите название семантической модели, например
dim_products_model. Выберитеdim_productsтаблицу, затем выберите « Подтвердить».В меню семантической модели выберите « Новый отчёт».
В процессе написания отчёта расширьте
dim_productsтаблицу в панели данных .В панели визуализации выберите таблицу столбцов.
Перетащите
categoryпо оси X.Перетащите
standard_priceпо оси Y, затем установите агрегацию на Среднее.Перетащите
subcategoryв Legend , чтобы разделить каждую категорию на подкатегории.
На ленте выберите «Сохранить файл>» и сохраните отчёт в своё рабочее пространство.
Отчёт читается из той же таблицы Delta в OneLake, которую вы только что запросили в T-SQL. Вы не создали вторую копию данных для формирования отчёта.
Читайте ту же таблицу из блокнота Spark.
Ноутбуки Fabric дают вам третий движок поверх тех же данных. Spark читает dim_products таблицу Delta напрямую из OneLake, не проходя через SQL-аналитику или семантическую модель. Этот шаг показывает, что движок с совершенно другим стеком запросов работает из тех же базовых файлов.
Вернитесь в домик на озере, где находится
dim_products.В меню Lakehouse выберите Анализ данных с помощью>записной книжки>Новая записная книжка. Блокнот открывается с вашим домом на озере, который уже прикреплен как стандартный домик на озере.
В первую кодовую ячейку вставьте следующий код PySpark:
Этот код использует
from_dateвременное измерение и суммирует количество товаров и среднюю цену по периодам и категориям.from pyspark.sql import functions as F df = spark.read.table("dim_products") summary = ( df.groupBy("from_date", "category") .agg( F.count("*").alias("products"), F.round(F.avg("standard_price"), 2).alias("avg_price"), ) .orderBy(F.col("from_date"), F.col("avg_price").desc()) ) display(summary)Выберите Run cell (или нажмите Shift+Enter), чтобы запустить ячейку. Результаты показывают, как средние цены различаются по категориям в даты вступления в силу.
Спарк читает файлы Delta в OneLake напрямую. Данные не копируются в специализированное хранилище Spark, и таблица, которую вы запросили, — это та же, что поддерживает вашу семантическую модель. Теперь у вас есть одна копия данных в OneLake, которую три движка — SQL-аналитика, Power BI Direct Lake и Spark — используют через открытое хранилище и формат открытой таблицы, не перемещая и не переформатируя данные.
Очистите ресурсы
Если вы не планируете продолжать использовать семантическую модель, отчет и блокнот, удалите их из рабочего пространства:
- В вашем рабочем пространстве наведите курсор на созданную семантическую модель и выберите меню «Больше опций» (...), затем выберите «Удалить».
- Повторяйте это для отчёта и блокнота в вашем рабочем месте.
Удаление отчёта, семантической модели или блокнота не влияет на исходный lakehouse и таблицу dim_products.