Что такое конечная точка аналитики SQL для lakehouse?

Конечная точка аналитики SQL обеспечивает возможность выполнения запросов T-SQL только для чтения по таблицам Delta в вашем lakehouse. Каждый lakehouse автоматически подготавливает конечную точку аналитики SQL при создании— ничего дополнительного для настройки не требуется. За кулисами конечная точка SQL аналитики работает на том же движке, что и Fabric Data Warehouse, поэтому вы получаете SQL запросы с высокой производительностью и низкой задержкой без управления инфраструктурой.

Конечная точка SQL-аналитики не является уникальной для лейкхаусов. Другие элементы Fabric, включая warehouses, зеркальные базы данных, SQL базы данных и Azure Cosmos DB, также автоматически предоставляют конечную точку для аналитики SQL. Опыт и ограничения одинаковы для всех из них.

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

Что можно сделать

Конечная точка аналитики SQL работает в режиме только для чтения в таблицах Delta — вы не можете вставлять, обновлять или удалять данные через него. Чтобы изменить данные, перейдите в lakehouse и используйте Apache Spark.

В пределах этой границы, доступной только для чтения, можно:

  • Запрос таблиц Delta с помощью T-SQL — выполняйте инструкции SELECT для любой таблицы Delta в вашем lakehouse, включая таблицы, доступные через ссылки на внешние хранилища Azure Data Lake Storage или Amazon S3.
  • Создание представлений, функций и хранимых процедур — инкапсуляции бизнес-логики и повторно используемых шаблонов запросов в объектах T-SQL, которые сохраняются в конечной точке аналитики SQL.
  • Применение безопасности на уровне строк и уровня объектов . Используйте детализированные разрешения SQL для управления таблицами , столбцами или строками, которые пользователи могут видеть.
  • Создание отчетов Power BI — семантические модели Power BI могут подключаться к SQL-аналитическому конечному узлу через его конечную точку табличного потока данных (TDS), чтобы создавать отчеты на основе данных lakehouse.
  • Запрос между рабочими областями . Используйте сочетания клавиш OneLake для ссылки на таблицы Delta в других озерах или хранилищах, а затем присоединить их к одному запросу. Дополнительные сценарии с несколькими рабочими областями см. в примерах использования конечных точек аналитики SQL Lakehouse.

Примечание.

Внешние таблицы Delta, созданные с помощью кода Spark, не отображаются в конечной точке аналитики SQL. Используйте сочетания клавиш в разделе "Таблицы", чтобы сделать внешние таблицы delta видимыми. Чтобы узнать, как это сделать, см. статью "Создание ярлыка".

Доступ к конечной точке аналитики SQL

Конечную точку аналитики SQL можно открыть двумя способами:

  • В рабочей области — в списке элементов рабочей области найдите элемент конечной точки аналитики SQL (он имеет то же имя, что и ваш lakehouse) и выберите его.
  • В обозревателе Lakehouse — в правой верхней области ленты используйте раскрывающийся список для переключения в представление конечной точки аналитики SQL.

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

Безопасность

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

Чтобы защитить данные, выполните приведенные далее действия.

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

Дополнительные сведения о модели безопасности см. в статье " Безопасность OneLake" для конечных точек аналитики SQL.

Синхронизация метаданных

При создании или обновлении таблицы Delta в lakehouse конечная точка аналитики SQL автоматически обнаруживает изменения и обновляет метаданные SQL — определения таблиц, типы столбцов и статистику. Нет шага импорта и не требуется ручной синхронизации. У вас есть несколько вариантов, чтобы вручную инициировать обновление метаданных конечной точки аналитики SQL.

Дополнительные сведения см. в разделе Синхронизация метаданных конечной точки аналитики SQL.

Повторная подготовка

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

Снимок экрана, показывающий опцию повторной подготовки конечной точки аналитики SQL в lakehouse.

Примечание.

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

Ограничения

Конечная точка аналитики SQL использует ту же систему, что и Fabric Data Warehouse, и они имеют одинаковые ограничения.

Следующие ограничения применяются к конечной точке SQL-аналитики, автоматической генерации схем и обнаружению метаданных.

  • Данные должны находиться в формате Delta Parquet для автоматического обнаружения в конечной точке аналитики SQL. Delta Lake — это платформа хранения с открытым кодом, которая позволяет создавать архитектуру Lakehouse.

  • Сопоставление столбцов Delta по имени поддерживается, но сопоставление столбцов Delta по идентификатору не поддерживается. Дополнительные сведения см. в разделе "Функции Delta Lake и интерфейсы Fabric".

  • Разностные таблицы, созданные вне /tables папки, недоступны в конечной точке аналитики SQL.

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

  • Некоторые столбцы, существующие в таблицах Spark Delta, могут быть недоступны в таблицах в конечной точке аналитики SQL. Для каждой таблицы Delta в Lakehouse конечная точка аналитики SQL автоматически создает таблицу с типами данных T-SQL. Подсистема конечных точек аналитики SQL основана на подсистеме Fabric Data Warehouse и предоставляет общий доступ к типам данных. Полный список поддерживаемых типов данных см. в разделе "Типы данных" в хранилище данных Fabric.

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

  • Для получения сведений и рекомендаций по производительности конечной точки аналитики SQL см. Рекомендации по производительности конечной точки аналитики SQL.

  • Скалярные определяемые пользователем функции поддерживаются, если они встраиваемые. Дополнительные сведения см. в статье CREATE FUNCTION и Scalar UDF inlining.

  • Тип данных varchar(max) поддерживается только в конечных точках аналитики SQL зеркальных объектов и баз данных Fabric, а не для озерхранилищ. Таблицы, созданные после 10 ноября 2025 г., автоматически будут сопоставлены с varchar(max). Таблицы, созданные до 10 ноября 2025 г., необходимо повторно создать для внедрения нового типа данных или автоматически обновляться до varchar(max) во время следующего изменения схемы.

Усечение данных до 8 КБ по-прежнему применяется к таблицам в конечной точке аналитики SQL для Lakehouse, включая ссылки на зеркальный элемент.

Поскольку не все таблицы поддерживают соединения с varchar(max), такие соединения могут не работать, как ожидалось, если в одной из таблиц все ещё происходит усечение данных. Например, если вы используете CTAS таблицу только что созданного зеркального объекта в таблицу Lakehouse при помощи Spark, то соедините их с помощью столбца с varchar(max), результаты запроса будут отличаться по сравнению с типом данных varchar(8000). Если вы хотите продолжить предыдущее поведение, в запросе можно привести столбец к varchar(8000).

Можно проверить, имеет ли таблица любой столбец varchar(max) из метаданных схемы с помощью следующего запроса T-SQL. max_length Значение -1 представляет varchar(max):

SELECT o.name, c.name, type_name(user_type_id) AS [type], max_length
FROM sys.columns AS c
INNER JOIN sys.objects AS o
ON c.object_id = o.object_id
WHERE max_length = -1 
AND type_name(user_type_id) IN ('varchar', 'varbinary');
  • Схемы с именами, конфликтующими с системными схемами (например sys , или information_schema) и субъектами безопасности базы данных (например db_owner, db_datareader), не поддерживаются в конечной точке аналитики SQL. Таблицы в этих схемах не будут синхронизироваться с конечной точкой аналитики SQL.

  • Рабочая область поддерживает до 150 объединённых элементов хранилища и конечных точек аналитики SQL. Создание дополнительных элементов, превышающих это ограничение, не поддерживается. Удалите существующий элемент перед созданием нового элемента.