Prévia do material em texto
Cidade/UF 2024 NOME RA: RELATÓRIO DE AULA PRÁTICA BANCOS DE DADOS NÃO RELACIONAIS UNIVERSIDADE ANHANGUERA – UNIDERP CENTRO DE EDUCAÇÃO À DISTÂNCIA ENGENHARIA DE SOFTWARE Cidade/UF 2024 RELATÓRIO DE AULA PRÁTICA BANCOS DE DADOS NÃO RELACIONAIS Roteiro Aula Prática apresentado a Universidade Anhanguera como requisito para obtenção de média para a disciplina de Relatório de Aula Prática Bancos de Dados Não Relacionais. Tutor(a) à Distância: Vinicius Camargo Prattes NOME RA: SUMÁRIO 1 INTRODUÇÃO ..................................................................................................... 3 2 DESENVOLVIMENTO ......................................................................................... 4 2.1 PREPARAÇÃO DO AMBIENTE DE DESENVOLVIMENTO ................................ 4 3 CONCLUSÃO .................................................................................................... 10 REFERÊNCIAS ......................................................................................................... 11 3 1 INTRODUÇÃO Na era digital atual, onde dados são considerados o novo petróleo, a capacidade de armazenar, organizar e acessar informações de maneira eficiente tornou-se uma necessidade fundamental para empresas e desenvolvedores. Com o surgimento e a popularização dos bancos de dados não relacionais (NoSQL), diversas possibilidades foram abertas para lidar com volumes massivos de dados, estruturas de dados variáveis, e requisitos de escalabilidade e performance que os modelos relacionais tradicionais muitas vezes não conseguem atender de forma satisfatória. Entre as soluções NoSQL disponíveis, o MongoDB destaca-se como uma plataforma de banco de dados orientada a documentos, oferecendo flexibilidade, escalabilidade e uma rica consulta e capacidade de indexação. O MongoDB armazena dados em documentos flexíveis semelhantes a JSON, permitindo que os desenvolvedores trabalhem com dados de maneira mais intuitiva e dinâmica em comparação com os sistemas de bancos de dados relacionais. Essa abordagem não apenas facilita o armazenamento de dados complexos e hierárquicos mas também simplifica o processo de desenvolvimento de aplicações, permitindo alterações de esquema sem downtime e sem a necessidade de migrações de dados complexas. Neste contexto, a presente atividade prática teve como foco a elaboração de um banco de dados utilizando o MongoDB, seguido pela execução de diversas consultas para explorar e manipular os dados armazenados. O objetivo foi proporcionar uma compreensão prática das operações fundamentais no MongoDB, desde a criação de um banco de dados e coleções até a realização de consultas complexas, utilizando tanto a interface gráfica do MongoDB Compass quanto a interface de linha de comando para uma experiência de aprendizado abrangente. Ao longo desta atividade, foram abordadas técnicas de inserção, atualização, e consulta de dados, destacando a flexibilidade e o poder do MongoDB como uma ferramenta para o gerenciamento de dados não relacionais. Através de uma série de consultas específicas, foi possível não apenas revisitar conceitos chave do modelo de dados do MongoDB mas também aplicar esses conceitos em cenários práticos, melhorando a compreensão sobre como dados não relacionais podem ser eficientemente modelados, acessados e manipulados. 4 2 DESENVOLVIMENTO Objetivos O principal objetivo desta aula prática foi criar e manipular um banco de dados não relacional utilizando o MongoDB. As atividades realizadas incluíram a criação de um banco de dados chamado "lojadb", a inserção e atualização de documentos em uma coleção "vendas", e a realização de diversas consultas para praticar a manipulação e consulta de dados. 2.1 ATIVIDADE PROPOSTA Nº 1 Procedimentos Realizados Etapa 1: Criação do Banco de Dados e Inserção de Documentos Inicialmente, instalei o MongoDB Community Server e o MongoDB Compass em meu computador, seguindo as orientações fornecidas. Utilizei o MongoDB Compass para criar um banco de dados chamado "lojadb" e uma coleção dentro desse banco chamada "vendas". Inserção de Documentos Inseri documentos referentes a três clientes (João, Marcos e Maria), contendo informações básicas como nome, se são clientes VIP (valor 1 para sim e 0 para não), email e números de telefone. Os números de telefone foram adicionados como uma array para cada cliente. 5 Etapa 2: Atualização de Documentos Após a inserção inicial, atualizei os documentos dos clientes adicionando informações de endereço e detalhes das compras realizadas. O endereço foi inserido como um objeto, e as compras como um array de objetos, permitindo listar múltiplos itens adquiridos por cada cliente. 6 2.2 ATIVIDADE PROPOSTA Nº 2 – CONSULTAS Utilizei o banco de dados criado para realizar consultas específicas, praticando a manipulação e consulta de dados em um banco de dados não relacional. As consultas realizadas foram: Retornar Todos os Documentos da Coleção "vendas" Utilizei o MongoDB Compass para visualizar todos os documentos dentro da coleção "vendas". Simplesmente deixei o campo de filtro vazio e cliquei em "Find", o que me permitiu ver todos os registros armazenados. 7 Localizar as Informações da Cliente "Maria” Para encontrar os dados da cliente "Maria", apliquei um filtro na consulta { "nome": "Maria" } no Compass. Isso me retornou o documento específico que continha as informações de compra, endereço e outros detalhes relacionados à Maria. Retornar os Clientes VIPs, Mostrando Apenas o Campo "nome" A fim de listar todos os clientes considerados VIPs (campo "cliente_vip" igual 8 a 1), usei o filtro { "cliente_vip": 1 } no Compass. Essa consulta me permitiu visualizar apenas os clientes marcados como VIP, simplificando a identificação desses perfis especiais. Exibir as Compras Efetuadas por "Marcos" Para visualizar as compras realizadas pelo cliente "Marcos", apliquei o filtro { "nome": "Marcos" } no Compass. Isso me proporcionou uma visão detalhada das compras efetuadas por Marcos, incluindo os produtos adquiridos e os respectivos preços. Retornar Todos os Nomes de Produtos Comprados por Todos os Clientes Para essa consulta mais complexa, utilizei o terminal de comandos. Primeiro, 9 abri o MongoDB Shell digitando mongo no terminal. Depois de selecionar o banco de dados lojadb com o comando use lojadb, executei a seguinte agregação: Esta consulta me permitiu desdobrar o array de compras, agrupar os resultados pelo nome do produto para eliminar duplicatas, e por fim, projetar os nomes dos produtos, resultando em uma lista limpa de todos os produtos comprados por nossos clientes. 10 3 CONCLUSÃO Ao concluir esta atividade prática com o MongoDB, fica evidente o papel crucial que os bancos de dados não relacionais desempenham no cenário de tecnologia atual, especialmente em aplicações que requerem flexibilidade de esquema, escalabilidade e a capacidade de lidar com grandes volumes de dados. O MongoDB, com sua abordagem orientada a documentos, não apenas facilita a representação e manipulação de dados complexos mas também oferece uma variedade de ferramentas intuitivas, como o MongoDB Compass e o shell de comandos, para realizar operações de banco de dados de maneira eficaz. Durante a atividade, a prática de elaborar um banco de dados e executar uma série de consultas forneceu insights valiosos sobre como estruturar e interagir com dados em um ambiente não relacional. A capacidade de inserir, atualizare consultar dados utilizando tanto uma interface gráfica quanto comandos de linha ofereceu uma perspectiva abrangente sobre as funcionalidades do MongoDB, revelando sua flexibilidade e poder. A última consulta, realizada via linha de comando, destacou particularmente a eficácia da Aggregation Framework do MongoDB, uma ferramenta poderosa para realizar operações de manipulação de dados complexos. Essa experiência sublinhou a importância de compreender e aplicar corretamente essas operações de agregação para extrair insights significativos dos dados armazenados. Em suma, esta atividade prática não só aprimorou a compreensão sobre o MongoDB e os bancos de dados NoSQL mas também reforçou a importância da escolha adequada de ferramentas de banco de dados em função das necessidades específicas de cada aplicação. À medida que avançamos na era dos dados, a habilidade de manipular e extrair valor dos dados com eficiência se torna cada vez mais crucial. O MongoDB demonstra ser uma escolha robusta e versátil para enfrentar esses desafios, equipando desenvolvedores com as ferramentas necessárias para construir aplicações dinâmicas e orientadas a dados. 11 REFERÊNCIAS MongoDB Community Download. Disponível em: <https://www.mongodb.com/try/download/community>. ARAÚJO, R. Introdução ao NoSQL e MongoDB. Tire suas Dúvidas Hoje! Disponível em: <https://www.hashtagtreinamentos.com/introducao-ao-nosql-e-mongodb- sql?gad_source=1&gclid=CjwKCAjwzN- vBhAkEiwAYiO7oGMEBUoN5fhtsIJptjSTaf9cZuKs4c6Ds-cKGUgfUU- agCIG9bP8DxoCfzMQAvD_BwE>. Acesso em: 19 mar. 2024. Tutorial MongoDB para iniciantes em NoSQL. Disponível em: <https://www.luiztools.com.br/post/tutorial-mongodb-para-iniciantes-em- nosql/>. Acesso em: 19 mar. 2024.