É possível construir um pipeline de dados utilizando Python, integrando-o com o MongoDB e o MySQL?
Meu nome é Millena Gená e serei a instrutora que vai te acompanhar nesse curso, onde vamos realizar essa tarefa.
Audiodescrição: Millena Gená Pereira se identifica como uma mulher branca, de cabelos longos, escuros e cacheados, presos em uma trança que remete à personagem Katniss Everdeen, do filme Jogos Vorazes. Tem olhos castanhos, na boca, usa um batom vermelho e no corpo, uma blusa preta com a estampa da Escola de Dados. Ao fundo, um guarda-roupa preto e paredes lisas iluminadas com LEDs azuis e rosa. Há também alguns livros da saga Harry Potter e um quadro de Friends, pois ela é fã dessas séries e filmes.
Durante o curso, vamos atuar como pessoas engenheiras de dados em uma empresa de e-commerce. Nosso primeiro trabalho será construir esse pipeline de dados, integrando as três ferramentas.
Ao longo do caminho, aprenderemos diversas habilidades, como:
Para que você aproveite ao máximo o conteúdo deste curso, é essencial que já tenha alguns conhecimentos sobre a linguagem Python, o MongoDB e o MySQL.
Organize seu setup (ambiente de trabalho), pegue um copo d'água e venha conosco construir um pipeline utilizando Python, MongoDB e MySQL.
Nos contrataram como pessoas engenheiras de dados em uma empresa de e-commerce. Como nosso primeiro trabalho nessa empresa, precisamos construir um pipeline de dados, ou seja, uma série de etapas para disponibilizar os dados dos produtos vendidos desta empresa para diferentes equipes com as quais nós trabalhamos.
Atualmente, esses dados estão disponíveis em uma API. Então, precisamos extrair os dados dessa API e, inicialmente, disponibilizá-los em um banco de dados não-relacional, que em nosso caso será o MongoDB. Desse modo, a equipe de Ciência de Dados consegue ter acesso a esses dados no formato bruto, conforme solicitado.
Além disso, também precisamos aplicar algumas transformações nesses dados. Uma vez que essas transformações sejam aplicadas, vamos salvar esses dados estruturados em tabelas em um banco de dados relacional, que será o MySQL, para que a equipe de Business Intelligence (BI) consiga ter acesso a esses dados estruturados da maneira que ela necessita.
Após obter a visão geral do que precisamos construir, vamos começar a configurar nosso banco de dados não-relacional, o MongoDB.
Para trabalhar com o MongoDB, utilizaremos uma ferramenta chamada MongoDB Atlas, que é basicamente a versão do MongoDB na nuvem. Escolhemos essa ferramenta porque, para desenvolver todos os códigos necessários em ambiente local, vamos trabalhar no Windows Subsystem for Linux (WSL), que é um terminal Linux que temos acesso no Windows.
Segundo a documentação do MongoDB, ele não dá suporte ao WSL, ou seja, não conseguimos instalar essa versão local do MongoDB no WSL no momento da gravação deste vídeo. Além disso, o MongoDB Atlas, que é a versão na nuvem, possui uma parte gratuita e é bastante intuitivo e de fácil utilização.
Vamos começar criando nossa conta no MongoDB Atlas.
Para isso, vamos abrir outra guia do navegador e digitar na barra de pesquisa "mongodb atlas". Nas opções que aparecem, vamos clicar na segunda, que diz "MongoDB Atlas". Aguardaremos o carregamento dessa página.
Após isso, seremos direcionados para a tela inicial do MongoDB Atlas, onde podemos criar uma nova conta.
Na seção direita da tela, intitulada "Sign up" (cadastre-se), podemos acessar o campo "First Name" para inserir nosso primeiro nome e o campo "Last Name" para inserir o sobrenome. Existem outros campos como "Company", mas não precisamos preenchê-los, pois não é obrigatório e não exibe o asterisco à direita do seu nome.
Os outros campos a serem preenchidos são "Email" e "Senha", que serão usados para login no MongoDB Atlas. Após preencher esses campos, marcaremos a caixa de seleção (checkbox) concordando com os termos de serviço e clicaremos no botão verde chamado "Create Your Atlas Account" (Crie sua Conta Atlas).
Após clicar, haverá o redirecionamento para uma nova tela informando que foi enviado um e-mail para confirmar a criação da conta. Assim, vamos acessar o e-mail, atualizar a página e procurar um e-mail do MongoDB Cloud. Ao abri-lo, localizaremos um botão verde chamado "Verify Email" (Verificar E-mail) e clicaremos nele.
Isso nos direcionará para uma outra guia do navegador, que exibirá a mensagem de e-mail verificado junto ao botão "Continue". Vamos clicar nele e aguardar que a próxima tela seja carregada.
Ele nos encaminhará para a tela de boas-vindas, onde são solicitadas algumas informações sobre o projeto que pretendemos desenvolver no Atlas para que eles possam aperfeiçoar a nossa experiência. Portanto, vamos fornecer algumas informações.
No topo do formulário, a primeira pergunta nos indaga qual é o nosso objetivo hoje. Podemos clicar em "Learn MongoDB" (Aprender MongoDB). Na próxima sessão, perguntam qual o tipo de aplicação que estamos construindo. Podemos clicar no botão de lista suspensa e, dentre as opções que aparecem, selecionar "I'm just exploring" (estou apenas explorando).
Na última caixa é perguntado qual é a nossa linguagem preferida. Clicaremos no botão de lista suspensa e, dentre as opções, podemos selecionar Python, que é a linguagem de programação que vamos utilizar.
Finalizado isso, podemos clicar em "Finish" (Finalizar), um botão localizado na lateral direita da tela.
Neste primeiro momento, tivemos o redirecionamento para a tela de criação de cluster, mas não faremos isso agora. Então, clicaremos na opção localizada na lateral direita inferior, onde está escrito "I will deploy my database later" (implantarei meu banco de dados mais tarde).
Após o clique, estaremos na tela inicial do MongoDB Atlas. Na barra lateral esquerda encontramos diversas opções, mas a que mais nos interessa é a primeira delas, denominada "Database" (Banco de Dados).
Agora que temos acesso ao MongoDB Atlas, podemos iniciar a configuração do nosso banco de dados.
Nós já criamos a nossa conta no MongoDB Atlas e agora precisamos criar a nossa base de dados. Como podemos fazer isso utilizando essa ferramenta?
Para trabalharmos no MongoDB Atlas, nosso primeiro passo é criar um cluster, onde hospedaremos a nossa base de dados. Então, vamos fazer isso.
No navegador, estamos com a conta aberta no MongoDB Atlas e estamos acessando a tela inicial. Para criar nosso cluster, precisamos selecionar a opção "Database", localizada na barra lateral à esquerda, e selecionar o botão verde "Build a Database" ("Construir uma base de dados"), posicionada na parte central da tela.
Após clicar nesse botão, ele nos levará para outra tela onde vamos definir as configurações do nosso cluster. Neste momento, a ferramenta oferece três cartões com opções de clusters prontos: "M10", à esquerda; "Serverless", no centro e "M0", à direita. Dentre essas opções, duas são pagas e uma é gratuita. Vamos clicar na opção gratuita "M0", a terceira, que está localizada à direita da tela.
Essa versão gratuita tem algumas limitações, mas atende tudo o que precisamos para armazenar nossos dados no curso. Descendo essa tela, temos mais algumas configurações a definir. Veremos uma seção à esquerda da tela, na qual podemos selecionar o provedor ("Provider"), a região ("Region") e o nome do cluster ("Name").
Nas seções de provedor e região, nós vamos manter as opções pré-selecionadas que, neste caso, são o provedor AWS e a região da Nova Virgínia (N. Virginia us-east-1).
Não entraremos em detalhes sobre essas informações, porque elas não são o foco do nosso curso. Contudo, disponibilizaremos um material complementar nesta aula onde cada campo será explicado, caso você deseje se aprofundar mais. Em suma, essas informações referem-se ao local de hospedagem do nosso cluster.
O único campo que vamos alterar é o "Name", onde daremos um nome ao nosso cluster. Vamos nomeá-lo como "Cluster-pipeline".
Cluster-pipeline
Abaixo de "Name", temos a seção de tags, que serve apenas para marcar esse cluster com alguma tag específica. Não precisamos disso agora.
Feitas todas essas configurações, podemos selecionar o botão verde "Create", alinhado à esquerda, na parte inferior da página. Em seguida, a plataforma solicita a seleção de algumas imagens para validar que não somos robôs. No caso deste vídeo, ela pediu para que selecionássemos imagens de tratores, então vamos tentar acertar algumas e clicar em "Avançar".
Após a validação, surge uma caixa de diálogo no canto inferior esquerdo da tela informando que o nosso cluster está sendo criado. Podemos fechá-la clicando no "x" localizado em seu canto superior direito.
A plataforma, nos redirecionou para uma página de segurança denominada "Security Quickstart". Nela, devemos fornecer algumas informações que nos permitirão acessar o nosso cluster após sua criação.
Na primeira seção, temos que escolher como autenticaremos a nossa conexão com o cluster. Para isso, podemos selecionar a opção "Username and Password", descer um pouco a tela e criar um nome de usuário e uma senha nos campos "Username" e "Password". Ele trouxe dados nestes campos por padrão, que provavelmente deve oferecer a você também, mas vamos apagá-los e adicionar as seguintes informações:
Username (nome de pessoa usuária):
millenagena
Password (senha):
12345
Uma vez que você também tiver informado seu nome de usuário e sua senha, podemos clicar no botão "Create User". Após aguardar um momento, notamos que abaixo dos campos que preenchemos há um nome de usuário e o tipo de autenticação que escolhemos, que foi por senha (Password).
Com isso resolvido, vamos descer a tela e acessar a próxima seção. Nela, a plataforma questiona de onde queremos nos conectar a esse cluster, ou seja, se será de um ambiente na nuvem ("Cloud Environment") ou de um ambiente local ("Local Environment").
No nosso caso, vamos trabalhar tudo localmente, então, podemos deixar a opção "My Local Environment" selecionada. Vamos descer para a última seção de segurança, onde se pede para informarmos quais endereços de IP terão acesso ao nosso cluster, ou seja, a partir de onde podemos acessar o nosso cluster.
Abaixo dos campos a serem preenchidos, ele traz por padrão uma tabela com o endereço de IP que identificou como o nosso endereço de IP atual. Porém, para não termos nenhum problema, caso mudemos de máquina ou de rede, vamos permitir que todo o endereço de IP tenha acesso ao nosso cluster.
Para fazer isso, podemos digitar no campo "IP Address" o IP 0.0.0.0/0
.
0.0.0.0/0
Após informar isso, podemos clicar no botão "Add Entry", abaixo desse campo. Assim, ele adicionou na tabela esse endereço de IP acima daquele definido por padrão. Isso significa que qualquer endereço pode ter acesso à nossa máquina. E agora, podemos excluir aquele gerado por padrão que não será necessário. Para isso, vamos clicar no botão "Remove", à direita dessa tabela.
Já fizemos todas as configurações de segurança necessárias. Agora, vamos acessar na barra lateral esquerda a primeira opção, "Database", para conferir se a criação do nosso cluster já foi finalizada.
Após clicar em "Database". Verificaremos no topo da página uma mensagem informando que o cluster ainda está sendo criado, e por isso exibe uma linha tracejada ao redor da seção de informações dele. Então, vamos aguardar um pouco até essa criação ser finalizada.
Após esse processo, a linha tracejada desaparecerá e o nosso cluster terá sido criado. O nosso próximo passo é aprender a nos conectar com esse cluster utilizando a linguagem Python.
O curso Pipeline de dados: integrando Python com MongoDB e MySQL possui 116 minutos de vídeos, em um total de 54 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:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.
Acesso completo
durante 1 ano
Estude 24h/dia
onde e quando quiser
Novos cursos
todas as semanas