Partilhar via


Controle e implantação do código-fonte do notebook

Este artigo explica como usar a integração com o Git e pipelines de implementação com cadernos no Microsoft Fabric. Aprendes a ligar um repositório, gerir o código-fonte do notebook e implementar notebooks em vários ambientes.

Antes de começar

  • Ligue o seu espaço de trabalho ao Git antes de concluir os passos de controlo de versões do caderno. Para instruções de configuração, veja Começar com integração com Git.
  • Crie regras de implementação de notebooks na etapa de destino (por exemplo, Teste ou Produção), não no Desenvolvimento.
  • Para criar regras de implementação, deve ser o proprietário do item.

Integração do Notebook com Git

Os notebooks Fabric suportam integração Git com Azure DevOps para controlo de versão. Podes fazer versões das alterações do notebook, colaborar usando branches e gerir as atualizações do ciclo de vida do notebook diretamente no Fabric.

Quando faz commit de um caderno juntamente com as suas dependências associadas (por exemplo, ambientes), a sincronização com outro espaço de trabalho preserva estas ligações. O Fabric vincula automaticamente o caderno aos recursos correspondentes no novo espaço de trabalho.

Para suportar este comportamento, o Fabric armazena identificadores lógicos para recursos anexos nos metadados do caderno. Como resultado, os diferenciais Git podem mostrar atualizações de metadados de IDs físicos para IDs lógicos.

Nota

Atualizações de metadados relacionadas com IDs lógicos e auto-binding podem aparecer nas visualizações Git diff mesmo quando o código do notebook não muda.

Configurar uma ligação

A partir das definições do espaço de trabalho, configura uma ligação ao teu repositório para fazer commit e sincronizar alterações. Para instruções de configuração, veja Começar com integração com Git. Depois de se ligar, os seus itens, incluindo os cadernos, aparecem no painel de controlo de origem.

Captura de ecrã do painel de controlo de código-fonte do espaço de trabalho.

Depois de confirmares as instâncias do notebook no repositório Git, podes ver a estrutura de pastas do notebook no repositório.

Agora pode realizar operações Git, como Create pull request.

Representação de notebook no Git

O texto seguinte mostra a estrutura de ficheiros de um item de caderno no repositório Git:

.
├── Notebook_1.Notebook/
│   ├── Resources/ (Optional)
│   │   └── builtin/
│   │       ├── large_dataset.parquet
│   │       └── model_output.parquet
│   ├── .platform
│   ├── fs-settings.json (Optional)
│   ├── notebook-content.py
│   └── notebook-settings.json (Optional)
└── Readme.md
.
├── Notebook_2.Notebook/
│   ├── Resources/ (Optional)
│   │   └── builtin/
│   │       ├── large_dataset.parquet
│   │       └── model_output.parquet
│   ├── .platform
│   ├── fs-settings.json (Optional)
│   ├── notebook-content.sql
│   └── notebook-settings.json (Optional)
└── Readme.md

Quando você faz o commit de um item de bloco de notas, o Fabric armazena-o como ficheiros fonte em vez de um ficheiro padrão .ipynb. Por exemplo, um caderno PySpark é armazenado como notebook-content.py. Este formato é mais fácil de rever em diferenciais Git.

O ficheiro fonte mantém os metadados do caderno (incluindo o lakehouse por defeito e o ambiente associado), as células markdown e as células de código como secções separadas. O Fabric usa esta estrutura para reconstruir o caderno quando sincronizas novamente com um espaço de trabalho.

A saída da célula de notebook não é incluída durante a sincronização com o Git.

A captura de ecrã seguinte mostra o formato de origem no repositório Git:

Captura de tela do formato de conteúdo do repositório Git do notebook.

Nota

Mantém os cadernos e os seus ambientes dependentes no mesmo espaço de trabalho, e faz a versão dos itens do caderno e do ambiente no Git. O Fabric mapeia estas relações quando sincronizas com novos espaços de trabalho.

O ID padrão do lakehouse mantém-se nos metadados do caderno quando sincronizas do repositório para um espaço de trabalho do Fabric. Se necessário, vincule manualmente o caderno ao novo item do lakehouse. Para obter mais informações, consulte Lakehouse Git integration.

Configurações do Git para Notebook

O painel de definições do Git permite-lhe controlar como os notebooks interagem com o controlo de versão, incluindo opções para a vinculação do Git e a gestão dos ficheiros da pasta Resources incluídos nos commits.

Nota

Não edites notebook-settings.json no repositório Git para controlar a ligação automática do Git ou recursos. Gere estas configurações através da página de configurações do notebook.

Binding Automático de Lakehouse no Git

Auto-Binding Lakehouse permite que o Fabric determine o lakehouse predefinido correto para cada espaço de trabalho conectado ao Git. Isto reduz a reencadernação manual quando se movem cadernos entre espaços de desenvolvimento, teste e produção.

Ativa esta funcionalidade nas definições do Notebook. Depois de o ativar, o Fabric cria notebook-settings.json no repositório e gere este ficheiro automaticamente. Não edites este ficheiro manualmente.

Captura de ecrã da integração do caderno com git.

Nota

A integração do Git com o Notebook suporta a manutenção da relação de ligação entre cadernos e os respetivos sistemas de gestão de dados (lakehouses) ao sincronizar entre espaços de trabalho. Ao sincronizar um caderno com outro espaço de trabalho, podes escolher se ele se liga à casa do lago no espaço de trabalho de origem ou à casa do lago no novo espaço de trabalho. Para cadernos já versionados no Git, o ID físico da casa do lago anexa nos metadados do caderno é substituído por um ID lógico. Esta alteração pode aparecer na vista Git diff.

Suporte a Pastas de Recursos de Notebooks no Git

Nota

A pasta Environment Resources e a integração com pipelines de implementação e APIs públicas não são atualmente suportadas.

A pasta Resources incorporada pode ser adicionada no Git, por isso scripts e ficheiros de configuração são versionados com o notebook.

Esta funcionalidade é opcional e está desligada por defeito. Ative-o a partir das definições do Notebook, na secção de definições do Git. Depois de o ativares, os ficheiros na pasta Recursos são incluídos nos commits. Como os commits têm um limite de 50 MB , use .gitignore regras de ficheiros ou Git para excluir ficheiros ou pastas grandes ou temporárias.

Captura de ecrã dos recursos do notebook em configuração git.

Nota

Apenas o .gitignore recurso incorporado na pasta raiz tem efeito.

Depois de configurares as regras Git e confirmares as alterações, o Fabric guarda as regras fs-settings.json no repositório. O Fabric gera e gere este ficheiro para manter a configuração do repositório consistente. Também não recomendamos editar este ficheiro diretamente no repositório Git.

Captura de ecrã da estrutura dos recursos do caderno em configuração git.

Notebook em pipelines de implementação

Use pipelines de implementação para promover alterações nos notebooks em fases como Desenvolvimento, Teste e Produção. Valide as atualizações em fases iniciais antes de as promover para produção.

A implementação de notebooks suporta a ligação automática para o lakehouse padrão e o ambiente anexado quando itens dependentes estão no mesmo espaço de trabalho. Durante a implementação, o Fabric pode reassociar estas dependências aos itens correspondentes no espaço de trabalho de destino. As alterações aos metadados podem aparecer na vista diferencial.

Se precisar de um lakehouse padrão específico para o estágio alvo, configure uma regra de implementação para substituir o auto-binding.

A nova interface do pipeline de implementação é atualmente utilizada neste artigo. Podes mudar para a interface antiga desativando o pipeline de Nova Implementação.

Nota

Problema conhecido: o estado da célula congelada nos notebooks não é preservado durante a implementação.

Siga os passos seguintes para implementar notebooks num pipeline de implementação.

  1. Crie um pipeline de implementação ou abra um existente. Para obter mais informações, consulte Introdução aos pipelines de implantação.

  2. Atribua espaços de trabalho a diferentes estágios de acordo com suas metas de implantação.

  3. Selecione, veja e compare itens, incluindo cadernos, entre fases. O emblema destacado mostra o número de itens alterados entre a fase anterior e a fase atual.

    Captura de tela do bloco de anotações no pipeline de implantação.

  4. Selecione Implementar para promover os notebooks nas fases de Desenvolvimento, Teste e Produção .

    Captura de ecrã de itens selecionados e implementação.

  5. Na janela Implementar para esta fase , revê os itens novos e alterados. Para continuar a implementação mesmo que um ou mais itens falhem, selecione Continuar a implementação se um ou mais itens falharem.

    Depois de rever e confirmar a seleção, selecione Implementar.

    Captura de ecrã do pop-up de conteúdo de implantação.png.

  6. (Opcional.) Para criar regras de implementação, selecione Regras de Implementação no item do estágio alvo no pipeline (por exemplo, Teste ou Produção).

    Para o comportamento e limitações gerais das regras, veja Criar regras de implementação.

    Captura de tela da entrada de regras de implantação.

  7. Configura uma regra Lakehouse predefinida para cada implementação de notebook.

    Esta regra controla a qual lakehouse o notebook se liga no estágio de destino após a implementação.

    No painel Definição de regras de implementação, selecione o mosaico Lakehouse predefinido.

    Use os menus suspensos "De" e "Para" para mapear o lakehouse padrão da fase de origem para o lakehouse padrão da fase alvo.

    • O mesmo acontece com o lakehouse de origem: Mantém a mesma configuração padrão do lakehouse do estágio de origem.
    • N/A (sem lakehouse padrão): Remover a definição padrão do lakehouse na etapa de destino.
    • Outros: Substituir a casa do lago padrão da fase de origem por uma outra na fase alvo.

    Se selecionar Outro no menu A, forneça os detalhes da casa do lago alvo:

    • Lakehouse ID
    • Nome do Lakehouse
    • ID do espaço de trabalho Lakehouse

    Captura de ecrã do lakehouse predefinido.

    Nota

    O identificador do Lakehouse é necessário quando configuras esta regra. Podes obter o Lakehouse ID através do URL do item. As regras de implementação têm prioridade sobre a ligação automática. Se uma regra de implementação for configurada, esta sobrepõe-se ao lakehouse auto-limitado.

  8. Monitore o estado da implantação a partir do histórico de implantação.