Compartilhar via


Desenvolver projetos de warehouse no Visual Studio Code

Aplica-se a:✅Armazém de dados no Microsoft Fabric

Saiba como configurar um projeto de banco de dados para o Fabric Data Warehouse no Visual Studio Code. Você criará um novo projeto, definirá objetos de esquema, criará e validará o projeto e o publicará em seu armazém.

Pré-requisitos

Antes de começar, certifique-se de:

  • Tenha acesso a um item existente do Warehouse em um workspace do Fabric com permissões de Contribuidor ou superiores.
  • Instale o Visual Studio Code em sua estação de trabalho.
  • Instale o SDK do .NET para criar e publicar projetos de banco de dados.
  • Instale duas extensões do Visual Studio Code: Projetos do Banco de Dados SQL e SQL Server (mssql).
    • Você pode instalar as extensões necessárias diretamente no Marketplace do Visual Studio Code pesquisando "Projetos do Banco de Dados SQL" ou "SQL Server (mssql)".

Criar um novo projeto de banco de dados

Você pode criar um projeto de banco de dados do início ou a partir de um data warehouse existente.

Opção 1: criar um novo projeto de banco de dados a partir da Paleta de Comandos no Visual Studio Code

  1. Abra o Visual Studio Code.

  2. Abra a Paleta de Comandos (Ctrl+Shift+P ou Cmd+Shift+P no Mac).

  3. Pesquisar por Projetos de Banco de Dados: Novos.

  4. Selecione Tipo de Projeto de Banco de Dados como Banco de Dados do SQL Server.

  5. Escolha um nome de projeto e selecione o local da pasta local.

  6. Escolha o "Synapse Data Warehouse" no "Microsoft Fabric" como a plataforma de destino.

  7. Quando solicitado, selecione Sim (recomendado) para um projeto no estilo SDK.

    Importante

    Somente projetos no estilo SDK são compatíveis com o Fabric Data Warehouse.

  8. Selecione Sim para a pergunta Deseja configurar o build do projeto SQL como a configuração de build padrão para esta pasta?

  9. Selecione Sim para confiar nos autores dos arquivos nesta pasta.

Opção 2: Criar um novo projeto de banco de dados a partir da extensão Projetos de Banco de Dados

  1. No Visual Studio Code, escolha o ícone de extensão Projetos de Banco de Dados na Barra de Atividades.

  2. No painel Projetos de Banco de Dados , selecione Criar novo.

    Captura de tela do Visual Studio Code mostrando o painel de extensão Projetos de Banco de Dados e o botão Criar novo.

  3. Selecione Tipo de Projeto de Banco de Dados como Banco de Dados do SQL Server.

  4. Escolha um nome de projeto e selecione o local da pasta local.

  5. Escolha o "Synapse Data Warehouse" no "Microsoft Fabric" como a plataforma de destino.

  6. Quando solicitado, selecione Sim (recomendado) para um projeto no estilo SDK. Somente projetos no estilo SDK são compatíveis com o Fabric Data Warehouse.

  7. Selecione Sim para a pergunta Deseja configurar o build do projeto SQL como a configuração de build padrão para esta pasta?

  8. Selecione Sim para confiar nos autores dos arquivos nesta pasta.

Opção 3: criar um projeto de banco de dados de um armazém existente

  1. Primeiro, crie um novo perfil de conexão para seu warehouse no Visual Studio Code.

    1. Selecione a extensão do SQL Server no Visual Studio Code na Barra de Atividades.
    2. Forneça um nome de perfil. Escolha Parâmetros.
    3. Forneça o nome do servidor. No portal do Fabric, nas Configurações do seu warehouse, recupere a string do SQL Endpoint. (Isso é diferente do endpoint de análise do SQL.) Parece ser <server unique ID>.datawarehouse.fabric.microsoft.com. Esse é o nome do servidor.
    4. Para tipo de autenticação, use Microsoft Entra ID Universal com suporte a MFA. Autentique com sua ID do Microsoft Entra.
    5. Forneça outras informações como padrão ou desejadas e selecione Conectar.
  2. No Visual Studio Code, escolha o ícone de extensão Projetos de Banco de Dados na Barra de Atividades .

  3. Selecione o botão ... opções no painel Projetos de Banco de Dados e escolha a opção Criar Projeto do Banco de Dados .

    Captura de tela do Visual Studio Code mostrando a opção Criar Projeto do Banco de Dados.

  4. Escolha seu depósito entre os perfis de conexão existentes.

  5. Forneça um nome de projeto e escolha uma pasta de projeto em sua estação de trabalho.

  6. Para a estrutura de pastas, selecione Esquema/Tipo de Objeto (recomendado).

  7. Para incluir permissões no projeto, selecione Não (padrão).

  8. Para o projeto no estilo SDK, selecione Sim (recomendado).

  9. Selecione Sim para a pergunta Deseja configurar o build do projeto SQL como a configuração de build padrão para esta pasta?

  10. O Visual Studio Code extrai arquivos de projeto do projeto do warehouse.

    Captura de tela do Visual Studio Code mostrando a notificação de progresso dos arquivos de projeto de extração.

  11. Após a extração bem-sucedida, você verá a seguinte notificação: "Extrair arquivos de projeto: Bem-sucedido. Concluído".

  12. Selecione Sim para confiar nos autores dos arquivos nesta pasta.

Novo projeto de banco de dados para seu warehouse

O novo projeto de banco de dados do seu armazém é exibido no menu Projetos do Banco de Dados SQL.

Captura de tela do Visual Studio Code mostrando o novo projeto de banco de dados para AdventureWorksDW2022.

Sua estrutura de projeto tem esta aparência:

 | Project Name
 ├── Database References
 ├── SQLCMD Variables
 ├── .vscode/
 └── schema/
     ├── Functions
     ├── Tables
     └── Views

Configurar o projeto de banco de dados

  1. Clique com o botão direito do mouse no projeto e selecione Editar Arquivo .sqlproj.

    Captura de tela do Visual Studio Code e do menu de contexto de um projeto de banco de dados. A opção Editar arquivo sqlproj está realçada.

  2. Verifique se a versão mais recente do SDK do Microsoft.Build.Sql está no arquivo. Por exemplo, no arquivo .sqlproj, altere a versão de Microsoft.Build.Sql para 2.0.0.

       <Sdk Name="Microsoft.Build.Sql" Version="2.0.0" />
    
  3. Verifique a versão mais recente do Microsoft.SqlServer.Dacpacs.FabricDw e adicione uma referência no nó XML Project/ItemGroup. Por exemplo:

       <PackageReference Include="Microsoft.SqlServer.Dacpacs.FabricDw" Version="170.0.2" />
    

    É assim que seu projeto de banco de dados para um armazém deve se parecer após as atualizações.

     <?xml version="1.0" encoding="utf-8"?>
     <Project DefaultTargets="Build">
       <Sdk Name="Microsoft.Build.Sql" Version="2.0.0" />
       <PropertyGroup>
         <Name>DatabaseProject715wh</Name>
         <ProjectGuid>{2E278BCC-F118-4DDB-9255-94697F2930B4}</ProjectGuid>
         <DSP>Microsoft.Data.Tools.Schema.Sql.SqlDwUnifiedDatabaseSchemaProvider</DSP>
         <ModelCollation>1033, CI</ModelCollation>
       </PropertyGroup>
       <ItemGroup>
         <None Include=".vscode\tasks.json" />
         <PackageReference Include="Microsoft.SqlServer.Dacpacs.FabricDw" Version="170.0.2" />
       </ItemGroup>
       <Target Name="BeforeBuild">
         <Delete Files="$(BaseIntermediateOutputPath)\project.assets.json" />
       </Target>
     </Project>
    
  4. Salve o .sqlproj arquivo. No prompt para recarregar seu projeto de banco de dados, selecione Sim.

Importante

A equipe do Fabric Data Warehouse frequentemente lança novas versões de pacotes NuGet. Como os valores de versão padrão no .sqlproj arquivo podem ser alterados ao longo do tempo, atualize-os em seu projeto local para se manter alinhado com as versões mais recentes disponíveis no NuGet para Microsoft.SqlServer.Dacpacs.FabricDw.

Adicionar ou atualizar objetos de banco de dados

Você pode definir ou modificar objetos de banco de dados, como tabelas, exibições, procedimentos armazenados e funções em seu projeto de warehouse.

Na pasta de um esquema específico, por exemplo, dbo, adicione, exclua ou faça alterações nas definições T-SQL de objetos em seu armazém de dados. Para modificar um objeto existente, abra seu arquivo correspondente .sql e atualize a definição conforme necessário.

Quando você cria o projeto, todos os objetos novos e atualizados são validados e incluídos no arquivo dacpac gerado no {project folder location}/bin/debug/{project name}.dacpac arquivo.

As alterações feitas aqui são apenas para o projeto de banco de dados e não são refletidas no Microsoft Fabric até que você crie e publique seu projeto.

Compilar e validar o projeto

  1. Abra o projeto de banco de dados se ainda não estiver aberto.

  2. Clique com o botão direito do mouse no projeto e selecione Compilar para criar o projeto de banco de dados.

    Captura de tela do Visual Studio Code mostrando a opção de criar o projeto de banco de dados.

  3. O build deverá ser bem-sucedido. Corrija os erros com base nas mensagens fornecidas na saída do evento de build.

Observação

Atualmente, o terminal padrão do Visual Studio Code deve ser o PowerShell para que o processo de build na extensão Projetos de Banco de Dados tenha êxito. Na Paleta de Comandos, escolha Terminal: Selecione Perfil Padrão e, em seguida, selecione PowerShell.

Publicar no Fabric Data Warehouse

Depois de compilar seu projeto, publique-o no seu armazém de destino. A publicação cria um script para resolver a diferença entre o projeto de banco de dados e o armazém de dados real, e executa um script para fazer com que o armazém de dados corresponda ao projeto. O modelo compilado do esquema de warehouse em um arquivo .dacpac pode ser implantado em um armazém de destino.

  1. Clique com o botão direito do mouse no projeto e selecione Publicar.

  2. Escolha Publicar em um SQL Server existente.

  3. Para selecionar o perfil de publicação a ser carregado, na primeira vez que você publicar, escolha Não usar o perfil.

    • Você pode salvar opções para publicar seu warehouse em um perfil de publicação. Quando você concluir, uma notificação do Visual Studio Code oferece a opção de salvar as opções de publicação que você acabou de usar em um arquivo de perfil de publicação.
    • Você pode reutilizar o perfil de publicação no futuro ao publicar seu projeto no seu repositório. Você pode ter diferentes opções de perfil para diferentes armazéns ou para ambientes diferentes em seus ambientes de desenvolvimento/teste/aceitação/desenvolvimento de produção.
  4. Escolha o perfil de conexão do Fabric Data Warehouse na lista.

  5. Escolha o nome do warehouse de destino.

  6. Na opção Escolher ação , você pode gerar script para revisar o script antes de publicar ou publicar projeto em um warehouse.

    • Na primeira vez que quiser implantar as alterações, você deve gerar o Script com cuidado e examinar o T-SQL resultante a ser aplicado ao warehouse de destino. Nenhuma alteração é feita no armazém de destino.
    • Se você escolher Publicar, as alterações serão gravadas no seu armazém de destino.

    Captura de tela do Visual Studio Code mostrando a notificação Implantar dacpac: Em andamento.

  7. Na notificação , você deseja salvar as configurações em um perfil (.publish.xml)?, escolha Sim e salve suas opções de perfil de publicação para a próxima vez que precisar publicar.

Configurações de implantação importantes para projetos de warehouse

Ao implantar projetos de banco de dados no Fabric Data Warehouse, várias configurações controlam alterações de esquema e podem afetar a segurança dos dados. Use com cuidado.

  • BlockOnPossibleDataLoss

    • O que ele faz: Impede a implantação se houver um risco de perda de dados (por exemplo, descartar uma coluna ou tabela que contenha dados).
    • Recomendação: Sempre definido True como em produção para proteger dados críticos.
    • Cuidado: Definir como False permite a implantação, mesmo que os dados possam ser perdidos. Use somente em ambientes controlados (por exemplo, desenvolvimento/teste).
  • DropObjectsNotInSource

    • O que ele faz: Descarta objetos no banco de dados de destino que não estão presentes na origem do projeto.
    • Recomendação: Use em ambientes de desenvolvimento/teste para limpar os objetos restantes.
    • Cuidado: O uso DropObjectsNotInSource em produção pode excluir objetos e dados importantes. Verifique duas vezes antes de habilitar.
  • Pre-Deployment Scripts

    • O que ele faz: Executa scripts SQL personalizados antes da implantação do esquema.
    • Usos comuns:
      • Arquivar ou fazer backup de dados antes de descartar tabelas
      • Desabilitar restrições ou gatilhos temporariamente
      • Limpar objetos herdados
    • Cuidado: Verifique se os scripts são idempotentes e não introduzem alterações de esquema que entram em conflito com a implantação.

Dica

Quando um processo de implantação é idempotente, ele pode ser executado várias vezes sem causar problemas e você pode implantar em vários bancos de dados sem precisar predeterminar seu status.

  • Post-Deployment Scripts

    • O que ele faz: Executa scripts SQL personalizados após a implantação do esquema.
    • Usos comuns:
      • Dados de pesquisa ou referência de semente
      • Habilitar novamente restrições ou gatilhos
      • Histórico de implantação de log
    • Cuidado: Evite operações pesadas em tabelas grandes em produção; verifique se os scripts podem ser executados com segurança várias vezes, se necessário.

Importante

Sempre examine os scripts e as configurações de implantação antes da publicação. Teste primeiro em ambientes de desenvolvimento/teste para evitar perda de dados não intencional.

Verificar publicação

Conecte-se ao seu warehouse e aos objetos de script que foram alterados ou verifique isso executando as informações do catálogo do sistema.