Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье представлены советы по использованию представлений T-SQL и разработке решений с выделенным пулом SQL и бессерверным пулом SQL в Azure Synapse Analytics.
Why use views
Views can be used in a number of different ways to improve the quality of your solution. В этой статье представлены примеры того, как можно обогатить решение с помощью представлений, а также здесь описаны ограничения, которые следует учитывать.
SQL pool - create view
Примечание.
Синтаксис команды CREATE VIEW в этой статье не рассматривается. Дополнительные сведения см. в документации по CREATE VIEW.
Архитектурная абстракция
Один из распространенных шаблонов приложения — повторное создание таблиц с помощью инструкции CREATE TABLE AS SELECT (CTAS) с последующим шаблоном переименования объектов при загрузке данных.
The following example adds new date records to a date dimension. Обратите внимание, что сначала создается новая таблица DimDate_New, которая затем переименовывается для замены исходной версии таблицы.
CREATE TABLE dbo.DimDate_New
WITH (DISTRIBUTION = ROUND_ROBIN
, CLUSTERED INDEX (DateKey ASC)
)
AS
SELECT *
FROM dbo.DimDate AS prod
UNION ALL
SELECT *
FROM dbo.DimDate_stg AS stg
;
RENAME OBJECT DimDate TO DimDate_Old;
RENAME OBJECT DimDate_New TO DimDate;
Помните, что эти действия могут привести к тому, что таблицы могут появляться в представлении пользователя и исчезать из него; кроме того, могут появляться подсказки с сообщениями об ошибках, информирующие о том, что таблица не существует. Представления нужны для предоставления пользователям доступа к согласованному уровню представления данных, пока базовые объекты переименовываются.
Когда пользователи обращаются к данным через представления, им не нужно видеть базовые таблицы. Этот слой не только обеспечивает согласованный пользовательских интерфейс, но и позволяет разработчикам решений аналитики развивать модель данных. Благодаря возможности усовершенствования базовых таблиц разработчики могут использовать CTAS, чтобы повысить производительность при загрузке данных.
Производительность и оптимизация
Представления также можно использовать для обеспечения эффективных, оптимизированных соединений между таблицами. Например, в представление можно включить избыточный ключ распределения как часть критерия соединения, чтобы минимизировать перемещение данных.
Еще одна важная возможность представлений T-SQL — принудительное применение определенного запроса или подсказки по соединению. As such, the views capability ensures that joins are always performed in an optimal fashion. Вы избавите пользователей от необходимости запоминать правильную конструкцию для своих соединений.
Ограничения
Представления в Synapse SQL хранятся только в формате метаданных. Поэтому следующие варианты недоступны:
- отсутствует возможность привязки схемы
- базовые таблицы нельзя обновлять через представление;
- для временных таблиц нельзя создавать представления;
- There's no support for the EXPAND / NOEXPAND hints
- в Synapse SQL нет индексированных представлений.
Следующие шаги
Дополнительные советы по разработке приведены в обзоре разработки Synapse SQL.