Como usar notebooks do Microsoft Fabric
O notebook do Microsoft Fabric é o item de código principal para o desenvolvimento de trabalhos do Apache Spark e para experimentos de aprendizado de máquina. É uma superfície interativa baseada na Web utilizada por cientistas de dados e engenheiros de dados para escrever códigos que se beneficiam de visualizações avançadas e texto Markdown. Os engenheiros de dados gravam código para ingestão de dados, preparação de dados e transformação de dados. Os cientistas de dados também usam notebooks para criar soluções de aprendizado de máquina, incluindo a criação de experimentos e modelos, acompanhamento de modelos e implantação.
Com um notebook do Fabric, você pode:
- Começar a trabalhar com um mínimo de configuração.
- Explorar e processar facilmente dados com uma experiência intuitiva de baixo código.
- Manter os dados protegidos com recursos internos de segurança corporativa.
- Analisar dados em formatos brutos (CSV, txt, JSON etc.), formatos de arquivo processados (parquet, Delta Lake, etc.), usando as funcionalidades avançadas do Spark.
- Seja produtivo com recursos de criação aprimorados e visualização de dados interna.
Este artigo descreve como usar notebooks em experiências de ciência de dados e engenharia de dados.
Contexto de segurança do notebook em execução
A execução de um notebook pode ser acionada de três maneiras diferentes no Fabric, com total flexibilidade para atender a diferentes cenários:
- Execução interativa: o usuário aciona manualmente a execução por meio das diferentes entradas de UX ou chamando a API REST. A execução será executada no contexto de segurança do usuário atual.
- Executar como atividade de pipeline: a execução é acionada do pipeline Data Factory do Fabric. Você pode encontrar as etapas detalhadas na Atividade do Notebook. A execução será executada no contexto de segurança do proprietário do pipeline.
- Agendador: a execução é acionada de um plano do agendador. A execução será executada no contexto de segurança do usuário que configurou/atualizou o plano do agendador.
A flexibilidade dessas opções de execução com diferentes contextos de segurança permite que você atenda a diferentes cenários e requisitos, mas também exige que você esteja ciente do contexto de segurança ao projetar e desenvolver seu notebook. Do contrário, poderá causar um comportamento inesperado e até mesmo alguns problemas de segurança.
Na primeira vez que um notebook for criado, uma mensagem de aviso será mostrada para lembrar você do risco de executar o código sem revisá-lo.
Aqui estão algumas melhores práticas para ajudar você a evitar problemas de segurança:
- Antes de executar manualmente o notebook, abra a configuração dele e verifique a seção Detalhes no painel Sobre quanto à atualização de modificação. Verifique se está tudo de acordo com a alteração mais recente.
- Antes de adicionar uma atividade de notebook a um pipeline, abra a configuração Notebook e verifique a seção Detalhes no painel Sobre quanto à atualização de modificação. Verifique se está tudo de acordo com a alteração mais recente. Se você não tiver certeza sobre a alteração mais recente, é melhor abrir o Notebook para revisar a alteração antes de adicioná-la ao pipeline.
- Antes de atualizar o plano do agendador, abra a configuração Notebook e verifique a seção Detalhes no painel Sobre quanto à atualização de modificação. Verifique se está tudo de acordo com a alteração mais recente. Se você não tiver certeza sobre a alteração mais recente, é melhor abrir o Notebook para revisar a alteração antes de atualizar o plano do agendador.
- Separe o espaço de trabalho em diferentes estágios (dev, test, prod) e controle o acesso de diferentes estágios para evitar o problema de segurança. Adicione apenas o usuário em quem você confia ao estágio de produção.
Criar notebooks
Você pode criar um notebook ou importar um notebook existente.
Criar um novo notebook
Semelhante a outros processos de criação de item padrão do Fabric, você pode criar facilmente um notebook na página inicial de Engenharia de Dados do Fabric, na opção Novo do workspace ou em Criar Hub.
Importar notebooks existentes
Você pode importar um ou mais notebooks existentes do computador local usando a entrada na barra de ferramentas do workspace. Os notebooks do Fabric reconhecem os arquivos .ipynb padrão Jupyter Notebook e arquivos de origem, como .py, .scala e .sql, e criam itens de notebook adequadamente.
Exportar um notebook
Você pode exportar seu notebook para outros formatos padrão. Os notebooks podem ser exportados nos seguintes formatos:
- O arquivo padrão de notebook (.ipynb) usado nos notebooks Jupyter.
- Um arquivo HTML (.html) que pode ser aberto diretamente no navegador.
- Um arquivo Python (.py).
- Um arquivo Latex (.tex).
Salvar um notebook
No Fabric, por padrão, um notebook será salvo automaticamente depois de aberto e editado. Você não precisa se preocupar com a perda de alterações de código. Você também pode usar Salvar uma cópia para clonar outra cópia no workspace atual ou em outro workspace.
Se preferir salvar o notebook manualmente, mude para a opção de salvamento Manual para ter um branch local do seu item de notebook e use a opção Salvar ou CTRL+s para salvar suas alterações.
Você também pode alternar para o modo de salvamento manual selecionando Editar – >Opções de salvamento – >Manual. Para ativar um branch local do notebook e salvá-lo manualmente selecione Salvar ou use o atalho de teclado Ctrl+s.
Conectar lakehouses e notebooks
Os notebooks do Fabric agora dão suporte à interação com lakehouses. Você pode adicionar facilmente um lakehouse novo ou existente pelo Lakehouse Explorer.
Você pode acessar diversos lakehouses no Lakehouse Explorer e definir um deles como padrão fixando-o. Seu padrão será montado no diretório de trabalho de runtime e você poderá ler ou gravar no lakehouse padrão usando um caminho local.
Observação
Você precisa reiniciar a sessão depois de fixar um novo lakehouse ou de renomear o lakehouse padrão.
Adicionar ou remover um lakehouse
Selecionar o ícone X ao lado de um nome de lakehouse o remove da guia do notebook, mas o item lakehouse ainda existe no workspace.
Selecione Adicionar lakehouse para adicionar mais lakehouses ao notebook, adicionando um existente ou criando um lakehouse.
Explorar um arquivo lakehouse
A subpasta e os arquivos na seção Tabelas e Arquivos do modo de exibição Lake aparecem em uma área de conteúdo entre a lista lakehouse e o conteúdo do notebook. Selecione pastas diferentes na seção Tabelas e Arquivos para atualizar a área de conteúdo.
Operações de pasta e arquivo
Se você selecionar um arquivo (.csv, .parquet, .txt, .jpg, .png etc.) clicando com o botão direito do mouse, poderá usar a API do Spark ou do Pandas para carregar os dados. Uma nova célula de código será gerada e inserida abaixo da célula de foco.
Você pode copiar facilmente o caminho com um formato diferente do arquivo ou pasta selecionado e usar o caminho correspondente no seu código.
Recursos do Notebook
O gerenciador de recursos do notebook fornece um sistema de arquivos semelhante ao Unix para ajudá-lo a gerenciar suas pastas e arquivos. Ele oferece um espaço gravável do sistema de arquivos em que você pode armazenar arquivos de tamanho pequeno, como módulos de código, modelos semânticos e imagens. Você pode acessá-los facilmente com código no notebook como se estivesse trabalhando com seu sistema de arquivos local.
Observação
- Os armazenamentos máximos de recursos para a pasta interna e a pasta de ambiente são de 500 MB, com um único tamanho de arquivo de até 100 MB. Ambos permitem até 100 instâncias de arquivo/pasta no total.
- Ao usar
notebookutils.notebook.run()
, utilize o comandonotebookutils.nbResPath
para acessar o recurso do notebook de destino. O caminho relativo builtin/ sempre apontará para a pasta interna do notebook raiz.
Pasta interna de recursos
A pasta interna de recursos é uma pasta predefinida do sistema para cada instância de item do notebook. Estas são as principais funcionalidades dos recursos do notebook.
- Você pode usar operações comuns, como criar/excluir, carregar/baixar, arrastar/soltar, renomear, duplicar e pesquisar pela interface do usuário.
- Você pode usar caminhos relativos como
builtin/YourData.txt
para uma exploração rápida. O métodonotebookutils.nbResPath
ajuda você a compor o caminho completo. - Você pode mover facilmente seus dados validados para um lakehouse por meio da opção Gravar no lakehouse. O Fabric tem snippets de código avançados incorporados dos tipos de arquivo comuns para ajudar você a começar a usar rapidamente.
- Esses recursos também estão disponíveis para uso no caso de Execução do notebook de referência por meio do
notebookutils.notebook.run()
.
Pasta de recursos de ambiente
A pasta de recursos de ambiente é um repositório compartilhado criado para simplificar a colaboração em vários notebooks.
Você pode encontrar a guia Recursos dentro do ambiente e colocar as operações completas para gerenciar os arquivos de recursos aqui. Esses arquivos podem ser compartilhados em vários notebooks, depois que notebook é anexado ao ambiente atual.
Na página Notebook, você pode encontrar facilmente uma segunda pasta raiz em Recursos herdados no ambiente anexado.
Você também pode operar nos arquivos/pastas da mesma forma com a pasta interna de recursos.
O caminho do recurso de ambiente será montado automaticamente no cluster do notebook. Você pode usar o caminho relativo /env para acessar os recursos de ambiente.
Editor de arquivos
O editor de arquivos permite que você exiba e edite arquivos diretamente na pasta de recursos do notebook e na pasta de recursos de ambiente no notebook. Os tipos de arquivo com suporte incluem CSV, TXT, HTML, YML, PY, SQL e muito mais. Com o editor de arquivos, você pode acessar e modificar arquivos facilmente no notebook. Ele dá suporte ao realce de palavra-chave e fornece o serviço de idioma necessário ao abrir e editar arquivos de código, como .py e .sql.
Você pode acessar esse recurso por meio da opção 'Exibir e editar' no menu de arquivo. Clicar duas vezes no arquivo é uma maneira mais rápida.
A alteração de conteúdo no editor de arquivos precisa ser salva manualmente clicando no botão Salvar ou atalho de teclado: Ctrl+S. O editor de arquivos não é compatível com o salvamento automático.
O editor de arquivos também é afetado pelo modo de notebook. Você só poderá exibir arquivos, mas não poderá editá-los, se estiver no modo de notebook sem a permissão de edição.
Observação
Estas são algumas limitações do editor de arquivos.
- O limite de tamanho do arquivo é de 1 MB.
- Não há suporte para estes tipos de arquivo para exibição e edição: .xlsx e .parquet.
Colaborar em um notebook
O notebook do Fabric é um item colaborativo que dá suporte à edição de vários usuários no mesmo notebook.
Ao abrir um notebook, você entra no modo de coedição por padrão e cada edição do notebook é salva automaticamente. Se os seus colegas abrirem o mesmo notebook simultaneamente, você verá o perfil, a saída da execução, o indicador de cursor, o indicador de seleção e o rastreamento da edição. Ao usar os recursos de colaboração, você pode facilmente realizar programação em par, depuração remota e cenários de explicações.
Compartilhar um notebook
Compartilhar um notebook é uma maneira conveniente de colaborar com os membros da equipe. Por padrão, as funções autorizadas do espaço de trabalho podem exibir ou editar/executar notebooks. Você pode compartilhar um notebook com a concessão de permissões específicas.
Selecione Compartilhar na barra de ferramentas do notebook.
Selecione a categoria correspondente de pessoas que podem exibir este notebook. Você pode escolher Compartilhar, Editar ou Executar permissões para os destinatários.
Depois de selecionar Aplicar, você pode enviar o notebook diretamente ou copiar o link para outras pessoas. Em seguida, os destinatários podem abrir o notebook com a exibição correspondente concedida pelo nível de permissão.
Para gerenciar ainda mais as permissões do notebook, selecione Lista de itens do Workspace>Mais opções e selecione Gerenciar permissões. Nessa tela, você pode atualizar o acesso e as permissões existentes do notebook.
Comentar uma célula de código
O comentário é outro recurso útil em cenários colaborativos. Atualmente, o Fabric dá suporte à adição de comentários no nível da célula.
Selecione o botão Comentários na barra de ferramentas do notebook ou no indicador de comentário da célula para abrir o painel Comentários.
Selecione o código na célula de código, selecione Novo no painel Comentários, adicione comentários e selecione Postar comentário para salvar.
Se precisar deles, localize as opções Editar comentário, Resolver thread e Excluir thread, selecionando a opção Mais ao lado do comentário.
Marcando outras pessoas em um comentário
"Marcação" refere-se a mencionar e notificar um usuário em um tópico de comentários, melhorando a colaboração de forma eficiente nas especificações.
Selecione uma seção de código em uma célula e crie um thread de comentários.
Insira o nome de usuário e escolha o correto na lista de sugestões se desejar mencionar alguém para discussão sobre uma determinada seção.
Compartilhe seus insights e publique-os.
Uma notificação por e-mail será acionada e o usuário clicará no link Abrir comentários para localizar rapidamente essa célula.
Além disso, autorize e configure as permissões para usuários ao marcar alguém que não tem acesso, garantindo que seus ativos de código sejam bem gerenciados.
Observação
Para um item de comentário, o usuário marcado não receberá mais uma notificação por e-mail se você atualizar o comentário em até uma hora. Mas ele enviará a notificação por e-mail para o novo usuário marcado.
Comutador de modo notebook
Os notebooks do Fabric são compatíveis com quatro modos que você pode alternar facilmente: modo de Desenvolvimento, modo de Somente execução, modo de Edição e modo de Exibição. Cada modo é mapeado para uma combinação de permissão específica. Ao compartilhar o notebook com outros membros da equipe, você pode conceder permissões adequadas aos destinatários e eles verão o melhor modo de notebook disponível de acordo com a permissão e poderão alternar entre os modos para os quais têm permissão.
- Modo de desenvolvimento: permissão necessária de leitura, execução e gravação.
- Modo de somente execução: permissão necessária de leitura e execução.
- Modo de edição: permissão necessária de leitura e gravação.
- Modo de exibição: permissão necessária de leitura.