Vistas T-SQL com conjunto de SQL dedicado e conjunto de SQL sem servidor no Azure Synapse Analytics

Neste artigo, encontrará sugestões para utilizar vistas T-SQL e desenvolver soluções com o conjunto de SQL dedicado e o conjunto de SQL sem servidor no Azure Synapse Analytics.

Porquê utilizar vistas

As vistas podem ser utilizadas de várias formas diferentes para melhorar a qualidade da sua solução. Este artigo destaca alguns exemplos de como enriquecer a sua solução com vistas e inclui as limitações que têm de ser consideradas.

Conjunto de SQL - criar vista

Nota

A sintaxe para CREATE VIEW não é abordada neste artigo. Para obter mais informações, veja a documentação CREATE VIEW .

Abstração arquitectónica

Um padrão de aplicação comum é recriar tabelas com CREATE TABLE AS SELECT (CTAS), que é seguido por um padrão de mudança de nome de objeto ao carregar dados.

O exemplo seguinte adiciona novos registos de datas a uma dimensão de data. Tenha em atenção como uma nova tabela, DimDate_New, é criada e, em seguida, muda o nome para substituir a versão original da tabela.

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;

Tenha em atenção que esta abordagem pode resultar em tabelas que aparecem e desaparecem da vista de um utilizador e pede mensagens de erro "a tabela não existe". As vistas podem ser utilizadas para fornecer aos utilizadores uma camada de apresentação consistente enquanto os objetos subjacentes são mudados.

Ao fornecer acesso aos dados através de vistas, os utilizadores não precisam de visibilidade para as tabelas subjacentes. Além de uma experiência de utilizador consistente, esta camada garante que os designers de análise podem desenvolver o modelo de dados. A capacidade de evoluir as tabelas subjacentes significa que os designers podem utilizar o CTAS para maximizar o desempenho durante o processo de carregamento de dados.

Otimização do desempenho

As vistas também podem ser utilizadas para impor associações otimizadas para o desempenho entre tabelas. Por exemplo, uma vista pode incorporar uma chave de distribuição redundante como parte dos critérios de associação para minimizar o movimento de dados.

Forçar uma sugestão de consulta ou associação específica é outra vantagem da utilização de vistas T-SQL. Como tal, a capacidade de vistas garante que as associações são sempre executadas de forma ideal. Evitará a necessidade de os utilizadores se lembrarem da construção correta para as respetivas associações.

Limitações

As vistas no Synapse SQL só são armazenadas como metadados. Consequentemente, as seguintes opções não estão disponíveis:

  • Não existe uma opção de enlace de esquema
  • As tabelas base não podem ser atualizadas através da vista
  • As vistas não podem ser criadas através de tabelas temporárias
  • Não existe suporte para as sugestões EXPAND/NOEXPAND
  • Não existem vistas indexadas no SQL do Synapse

Passos seguintes

Para obter mais sugestões de desenvolvimento, veja Descrição geral do desenvolvimento do SQL do Synapse.