Master
Técnicas

Uso de notebooks em produção

NOT ON THE CURRENT EDITION
This blip is not on the current edition of the Radar. If it was on one of the last few editions it is likely that it is still relevant. If the blip is older it might no longer be relevant and our assessment might be different today. Unfortunately, we simply don't have the bandwidth to continuously review blips from previous editions of the RadarUnderstand more
Published: Apr 24, 2019
Last Updated: Oct 28, 2020
Oct 2020
Evite?

Nas últimas décadas, notebooks computacionais, introduzidos pela primeira vez pelo Wolfram Mathematica, evoluíram para apoiar pesquisas científicas, explorações e fluxos de trabalho educacionais. Naturalmente, apoiando fluxos de trabalho de ciência de dados e com opções semelhantes aos notebooks Jupyter e Databricks, eles se tornaram grandes companheiros, fornecendo um ambiente de computação interativo, simples e intuitivo para combinação de código para analisar dados com texto rico, e visualização, para contar uma história a partir dos dados. Os notebooks foram projetados para fornecer um meio definitivo para comunicação e inovação científica moderna. Nos últimos anos, entretanto, vimos uma tendência de usar notebooks como meios para executar em produção código com o tipo de qualidade normalmente necessária para conduzir operações corporativas. Vemos fornecedoras de plataformas de notebook anunciando o uso de seus notebooks exploratórios em produção. Este é um exemplo de uma boa intenção — democratizar a programação para cientistas de dados — implementada de forma inadequada, prejudicando a escalabilidade, a manutenção, a resiliência e todas as outras qualidades que um código de produção de longa duração precisa suportar. Não recomendamos o uso de notebooks em produção e, em vez disso, incentivamos a habilitação de cientistas de dados para criar código pronto para produção com os frameworks de programação certos, simplificando assim o conjunto de ferramentas de entrega contínua e removendo a complexidade por meio de plataformas de ML de ponta a ponta.

Apr 2019
Evite?

Os notebooks Jupyter ganharam popularidade entre cientistas de dados, que os utilizam para análises exploratórias, desenvolvimento em estágios iniciais e compartilhamento de conhecimento. Esse aumento na popularidade criou uma tendência de uso em produção de notebooks Jupyter, disponibilizando ferramentas e suporte para executá-las em escala. Embora não queiramos desencorajar ninguém a usar suas ferramentas de escolha, não recomendamos o uso de notebooks Jupyter para criar código de produção escalável, sustentável e duradouro – eles não têm controle de versão eficaz, tratamento de erros, modularidade e extensibilidade, entre outros recursos básicos necessários para a criação de código escalável e pronto para produção. Em vez disso, incentivamos pessoas desenvolvedoras e cientistas de dados a trabalharem juntas para encontrar soluções que capacitem cientistas de dados a criar modelos de aprendizado de máquina prontos para produção, usando práticas de entrega contínua com as estruturas de programação corretas. Alertamos contra o uso em produção de notebooks Jupyter para superar ineficiências em pipelines de entrega contínua para aprendizado de máquina ou testes automatizados inadequados.