Alura > Cursos de Data Science > Cursos de Engenharia de Dados > Conteúdos de Engenharia de Dados > Primeiras aulas do curso Azure Data Lake: criando um pipeline de ingestão de dados

Azure Data Lake: criando um pipeline de ingestão de dados

Criando recursos na Azure - Apresentação

Como podemos criar um Data Lake e construir um pipeline de dados que vai realizar a ingestão de dados nesse Data Lake utilizando o serviço de cloud (nuvem) da Azure?

Meu nome é Millena Gená e serei a instrutora que irá acompanhar você neste curso no qual vamos criar um Data Lake na Azure e construir um pipeline que copiará os dados do Azure Blob Storage para o Azure Data Lake, além de outros processos.

Audiodescrição: Millena Gená é uma mulher branca de olhos castanhos. Tem cabelos longos, escuros e cacheados, que estão presos em uma trança lateral. Está com batom vermelho, fones de ouvido e uma blusa preta com o logotipo verde da Escola de Dados. Ao fundo, um guarda-roupa preto e diversas decorações da cultura pop iluminados por luzes LEDs em tons de azul e rosa.

O que vamos aprender?

Qual será o nosso cenário de trabalho nesse curso? Atuaremos como pessoas engenheiras de dados contratadas pelo governo da cidade de Boston.

Nosso trabalho nessa instituição será construir um projeto em que devemos extrair dados de um site, salvá-los compactados no Blob Storage da Azure e, em seguida, copiar todos esses dados do Blob Storage para o nosso Data Lake.

Vamos fazer tudo isso utilizando o serviço de nuvem da Azure e a linguagem de programação Python.

Ao longo desse curso, vamos aprender a:

Pré-requisitos

A fim de aproveitar ao máximo o conteúdo deste curso, é fundamental que você possua um conhecimento básico da linguagem Python e também esteja familiarizado com conceitos de serviços de cloud, principalmente o serviço de cloud da Azure.

Vale lembrar que o serviço de cloud da Azure, assim como qualquer outro serviço de cloud, gera custos caso você não esteja mais no período de gratuidade oferecido por todos os serviços de nuvem.

Portanto, recomendamos que tente executar o projeto deste curso o mais rápido possível. Tente reservar um ou dois dias para poder executar todo o projeto e minimizar os gastos que possam ser gerados nessa plataforma.

Se você se interessou pelo projeto, prepare seu ambiente, pegue um copo de água e venha conosco aprender a construir todo esse projeto usando o serviço de cloud da Azure e a linguagem de programação Python.

Criando recursos na Azure - Entendendo o pipeline

Nós fomos contratados como pessoas engenheiras de dados pelo governo da cidade de Boston. Qual será nossa função nessa instituição?

Apresentando o contexto

Atualmente, o governo disponibiliza um número, o 311, por meio do qual a população pode ligar para solicitar serviços não emergenciais. Por exemplo, a reparação de um sinal de trânsito quebrado, a limpeza de uma rua ou o conserto de um buraco são alguns dos vários tipos de serviços não emergenciais que podem ser solicitados.

Essas solicitações são registradas e salvas desde 2011 até o presente ano, 2023, no repositório de dados aberto da cidade de Boston, em um site chamado Analyze Boston.

Nosso trabalho, como pessoas engenheiras de dados, será coletar uma quantidade específica desses dados e disponibilizá-los de forma mais prática.

Assim, analistas e cientistas de dados poderão identificar quais são as solicitações de serviços mais recorrentes, o que possibilitará ao governo encontrar medidas para evitar que esses problemas ocorram com tanta frequência.

Para disponibilizar esses dados da melhor forma, utilizaremos o serviço de cloud da Microsoft Azure, e seguiremos uma série de etapas para disponibilizar os dados conforme o governo da cidade de Boston nos solicitou.

Entendendo o pipeline

Primeiro, vamos extrair os dados necessários do repositório de dados abertos da cidade de Boston. Após extraídos, vamos compactar esses dados e, inicialmente, salvá-los no serviço Azure Blob Storage.

Este é um serviço de armazenamento fornecido na plataforma de cloud da Azure que permite guardar diversos tipos de arquivos, desde textos até imagens e vídeos.

Os dados compactados serão armazenados como um backup, garantindo que, caso sejam perdidos, poderemos acessá-los facilmente.

No entanto, analistas e cientistas de dados não acessarão os dados compactados no Blob Storage. É preciso disponibilizá-los de forma prática e descompactada.

Para isso, depois de armazená-los no Blob Storage, vamos copiar esses dados e os salvar no serviço de Data Lake, também oferecido pelo Azure. Durante esse processo de transferência, vamos descompactar os dados para torná-los mais organizados para o processamento e análise.

Para realizar a cópia e descompressão, montaremos um pipeline utilizando serviços da plataforma de cloud do Azure.

Trello do projeto

Embora pareçam muita etapas a serem feitas, não se preocupe: construímos um quadro no Trello com todas as etapas detalhadas desse processo para que não nos percamos na construção do pipeline.

Este quadro no Trello consiste em quatro colunas:

Na primeira coluna, "Informações do Projeto", há dois cards: "Projeto", que contém uma descrição completa do cenário de trabalho que já te apresentamos; e "Bases de Dados", onde você encontrará os links para as bases de dados que utilizaremos ao longo do processo.

Na segunda coluna, denominada "Para ser feito", nós temos todos os cartões com as tarefas que precisamos realizar. O primeiro deles é "Configurar os recursos na Azure" e o segundo é "Criar uma conta de armazenamento". Esses dois cartões serão resolvidos durante a primeira aula.

Prosseguindo com os próximos cartões, temos: "Extrair e compactar os dados" e "Salvar os dados no Blob Storage". Essas serão tarefas realizadas no decorrer da segunda aula.

Na terceira aula, nós resolveremos as tarefas do cartão "Criar e estruturar o Data Lake". Na quarta aula, trabalharemos no cartão "Configurar o Data Factory".

Por fim, na quinta aula, executaremos a tarefa de "Criar um Pipeline para copiar os dados do Blob para o Data Lake".

Conforme avançarmos no nosso projeto, deslocaremos esses cartões para a coluna "Em andamento" e, posteriormente, para a coluna "Concluídos".

Agora que já sabemos sobre todas as etapas do projeto que precisamos desenvolver, podemos começar o trabalho.

Criando recursos na Azure - Criando um grupo de recursos

Vamos começar nosso projeto. Já estou com o Trello do projeto aberto, então vamos conferir qual é o primeiro cartão na coluna "Para ser feito".

Acessando este cartão, intitulado "Configurar Recursos na Azure", encontramos uma descrição do que deve ser feito e, mais abaixo, um checklist com todas as tarefas que precisamos realizar.

No caso desse primeiro cartão, temos três tarefas:

Neste vídeo, não realizaremos a criação da conta na Azure e nem a criação do alerta de gastos, porque são duas tarefas que são feitas nas atividades anteriores a este vídeo, chamadas "Preparando o ambientes", onde ensinamos como criar sua conta na Azure e também para fazer seu alerta de gastos.

Portanto, caso você não tenha realizado os passos dessas atividades anteriores, pausa este vídeo e faça isso, porque tanto a criação da conta da Azure e do alerta de gastos são essenciais, principalmente o alerta de gastos. Como vamos trabalhar com serviço de cloud, teremos alguns gastos, mesmo que mínimos, e o alerta de gastos nos ajuda a controlar esses gastos em nossa conta.

Como já realizamos essas duas tarefas e, espero que você também, podemos marcar essas duas primeiras tarefas como realizadas. Agora, precisamos realizar a criação do grupo de recursos.

Vamos fechar este cartão, arrastá-lo para a coluna "Em Andamento" e começar a criar este grupo de recursos.

Interface da Microsoft Azure

No navegador, já estamos na plataforma da Microsoft Azure. A interface da página inicial é bem intuitiva.

Caso seja a primeira vez que você esteja acessando a Microsoft Azure, é possível que nessa seção superior onde temos os "Serviços do Azure" não esteja aparecendo nada, pois normalmente aparecem os serviços que acessamos com mais frequência.

Logo abaixo, temos a seção de "Recursos". Na aba de recentes, aparecem os recursos mais recentes que acessamos. No nosso caso, como não temos nenhum recurso criado, é apresentado somente a assinatura da Azure.

Descendo um pouco mais, também encontramos a seção de "Navegar", que apresenta mais alguns recursos de fácil acesso e, por fim, temos a seção de "Ferramentas" e "Links úteis", que apresentam links de documentações e recursos que podemos acessar.

À medida que desenvolvemos nosso projeto, vamos entender melhor como essa plataforma funciona.

Criando grupo de recursos

Neste primeiro momento, a nossa tarefa é criar um grupo de recursos. Para criar um novo recurso na Azure, podemos ir à seção de "Serviços do Azure" e clicar na primeira opção para "Criar um recurso". Na barra de pesquisa, vamos buscar o nome do recurso que queremos criar. Nesse caso, digitamos "grupo de recursos" e pressionamos "Enter".

A pesquisa retorna algumas respostas e a primeira delas é o "Grupo de Recursos", com uma descrição sobre para que serve esse recurso, que é para gerenciar e implantar recursos juntos em um aplicativo. Clicamos em "Criar > Grupo de Recursos".

Esse grupo de recursos servirá para criarmos todos os outros recursos que nosso projeto necessita. É como se tivéssemos uma pasta dentro da Azure, onde armazenaremos todos os recursos relacionados a um mesmo projeto.

Isso é muito interessante porque promove uma organização mais eficiente no nosso ambiente de trabalho.

Para a criação deste grupo de recursos, algumas informações básicas são necessárias. A primeira delas é a assinatura. Em nosso caso, já apareceu a Assinatura Azure 1, que é a única que possuímos nessa conta. No seu caso, provavelmente também apresentará a sua assinatura selecionada por padrão.

Prosseguindo, é necessário dar um nome para este grupo de recursos. Nomearemos como projetoboston-rg referindo a "Resource Group", que é grupo de recursos em inglês.

Na seção "detalhes do recurso", será preciso selecionar a região onde esse recurso será criado. Sempre trabalharemos em uma mesma região, por ser uma das mais econômicas. Essa região é a East US 2. Portanto, para todos os recursos que criarmos na Azure, utilizaremos esta região.

Poderemos continuar clicando na opção "Avançar", localizada na parte inferior da tela. Em seguida, temos uma seção de marcações, mas não precisaremos criá-las. Portanto, podemos clicar novamente em "Avançar" e aguardar a validação.

Validação aprovada.

Se tudo estiver correto com nosso recurso, surgirá o botão "Criar", localizado no canto inferior esquerdo da tela. Feito isso, vamos aguardar enquanto o recurso é criado.

Grupo de recursos criado.

Um aviso irá aparecer no canto superior direito indicando que o grupo de recursos foi criado. Podemos clicar na opção "Ir para o grupo de recursos" para verificar o estado deste serviço.

Com isso, somos redirecionamos a página do grupo de recursos. O nome do grupo aparecerá no canto superior à esquerda (no nosso caso, projetoboston-rg) e os recursos existentes dentro deste grupo serão exibidos na parte central da tela.

Como ainda não criamos nenhum outro recurso, é natural que não apareça nada nessa área. Contudo, conforme formos criando outros recursos na Azure e vinculando-os a este grupo de recursos, eles aparecerão nesse local.

Conclusão

Agora podemos retornar ao nosso Trello, acessar o único cartão na coluna "Em andamento", marcar a tarefa de criação do grupo de recursos como concluída e mover o cartão para a coluna de "Concluídos".

Com o grupo de recursos criado, podemos começar a criar outros recursos na Azure.

Sobre o curso Azure Data Lake: criando um pipeline de ingestão de dados

O curso Azure Data Lake: criando um pipeline de ingestão de dados possui 110 minutos de vídeos, em um total de 49 atividades. Gostou? Conheça nossos outros cursos de Engenharia de Dados em Data Science, ou leia nossos artigos de Data Science.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda Engenharia de Dados acessando integralmente esse e outros cursos, comece hoje!

Conheça os Planos para Empresas