Exibições T-SQL com pool SQL dedicado e pool SQL sem servidor no Azure Synapse Analytics

Neste artigo, você encontrará dicas para usar exibições T-SQL e desenvolver soluções com pool SQL dedicado e pool SQL sem servidor no Azure Synapse Analytics.

Porquê utilizar vistas

As visualizações podem ser usadas de várias maneiras diferentes para melhorar a qualidade da sua solução. Este artigo destaca alguns exemplos de como enriquecer sua solução com visualizações e inclui as limitações que precisam ser consideradas.

Pool SQL - criar exibição

Nota

A sintaxe de CREATE VIEW não é discutida neste artigo. Para obter mais informações, consulte a documentação CREATE VIEW .

Abstração arquitetónica

Um padrão de aplicativo comum é recriar tabelas usando CREATE TABLE AS SELECT (CTAS), que é seguido por um padrão de renomeação de objeto durante o carregamento de dados.

O exemplo a seguir adiciona novos registros de data a uma dimensão de data. Observe como uma nova tabela, DimDate_New, é criada primeiro e, em seguida, renomeada 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;

Lembre-se de que essa abordagem pode fazer com que as tabelas apareçam e desapareçam da visualização de um usuário e solicita mensagens de erro "tabela não existe". Os modos de exibição podem ser usados para fornecer aos usuários uma camada de apresentação consistente enquanto os objetos subjacentes são renomeados.

Ao fornecer acesso aos dados por meio de modos de exibição, os usuários não precisam de visibilidade para as tabelas subjacentes. Além de uma experiência de usuário consistente, essa camada garante que os designers de análise possam evoluir o modelo de dados. A capacidade de evoluir as tabelas subjacentes significa que os designers podem usar o CTAS para maximizar o desempenho durante o processo de carregamento de dados.

Otimização do desempenho

As exibições também podem ser usadas para impor uniões otimizadas de desempenho entre tabelas. Por exemplo, uma exibição pode incorporar uma chave de distribuição redundante como parte dos critérios de junção para minimizar a movimentação de dados.

Forçar uma consulta específica ou uma dica de junção é outro benefício do uso de exibições T-SQL. Como tal, a capacidade de visualizações garante que as junções sejam sempre realizadas de forma otimizada. Você evitará a necessidade de os usuários se lembrarem da construção correta para suas junções.

Limitações

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

  • Não há uma opção de vinculação de esquema
  • As tabelas base não podem ser atualizadas através da vista
  • Não é possível criar vistas em tabelas temporárias
  • Não há suporte para as dicas EXPAND / NOEXPAND
  • Não há exibições indexadas no Synapse SQL

Próximos passos

Para obter mais dicas de desenvolvimento, consulte Visão geral do desenvolvimento Synapse SQL.