Mongodb - O Banco De Dados Nosql Mais Utilizado Da Atualidade
()
Sobre este e-book
Leia mais títulos de Marcio Porto Feitosa
Fundamentos De Banco De Dados Nota: 0 de 5 estrelas0 notasO Detetive Zé Maria E O Assassinato Do Faxineiro Nota: 0 de 5 estrelas0 notasFatores Determinantes No Desempenho De Sistemas De Bancos De Dados Nota: 0 de 5 estrelas0 notas
Relacionado a Mongodb - O Banco De Dados Nosql Mais Utilizado Da Atualidade
Ebooks relacionados
MySQL: Comece com o principal banco de dados open source do mercado Nota: 4 de 5 estrelas4/5Desenvolvimento De Software Ii C# Programação Em Camadas Nota: 0 de 5 estrelas0 notasFront-end Para Iniciantes Nota: 0 de 5 estrelas0 notasProgramando Um Sistema Web Em Java Com Jsf, Hibernate E Primefaces Nota: 0 de 5 estrelas0 notasAnálise De Sistemas V. 4 Nota: 0 de 5 estrelas0 notasProgramando Em Java Com Banco De Dados Nota: 0 de 5 estrelas0 notasConversando Sobre Banco De Dados Nota: 0 de 5 estrelas0 notasCobol Web Nota: 0 de 5 estrelas0 notasProgramando Em Java - Guia Essencial E Prático Nota: 0 de 5 estrelas0 notasApostila Noções De Informática Nota: 0 de 5 estrelas0 notasFundamentos Em Sql Com Ênfase Em Postgres Nota: 0 de 5 estrelas0 notasSistemas Orientados a Objetos: Conceitos e Práticas Nota: 0 de 5 estrelas0 notasRest Com Spark No Java No Ambiente Intellij Idea Nota: 0 de 5 estrelas0 notasApostila Técnica Nota: 0 de 5 estrelas0 notasApostila – Criando Um Mvc Em Php Nota: 0 de 5 estrelas0 notasIntrodução Ao Elipse E3 Studio Nota: 0 de 5 estrelas0 notasOrdenação Quick Select Em Python Nota: 0 de 5 estrelas0 notasProgramando Em Python Do Básico `a Web Nota: 0 de 5 estrelas0 notasArquitetura Orientada a Eventos: Soluções escaláveis e em tempo real com EDA Nota: 0 de 5 estrelas0 notasIntrodução Ao React E Css No Ambiente Replit Parte I Nota: 0 de 5 estrelas0 notasSegredos Para Turbinar Seu Perfil No Linkedin E Alavancar Oportunidades Nota: 0 de 5 estrelas0 notasDesenvolvimento De Software - Aplicativo Comercial Com C# E Camadas Nota: 0 de 5 estrelas0 notasDesenvolvedor De Back-end Em 30 Dias Nota: 0 de 5 estrelas0 notasApostila De Controle De Vendas Nota: 0 de 5 estrelas0 notasDez Ferramentas De Gestão Empresarial Que Você Precisa Conhecer Nota: 0 de 5 estrelas0 notasProgramação Para Google Android Nota: 0 de 5 estrelas0 notasImplementando Busca Linear Programado No Python Nota: 0 de 5 estrelas0 notasCurso De Joomla Nota: 0 de 5 estrelas0 notasVRaptor: Desenvolvimento ágil para web com Java Nota: 0 de 5 estrelas0 notasImplementando Árvore Binária Em Python Nota: 0 de 5 estrelas0 notas
Bancos de dados para você
Bíblia De Programação Python Para Iniciantes Nota: 0 de 5 estrelas0 notasPower Bi Black Belt Nota: 0 de 5 estrelas0 notasPrimeiros passos com Node.js Nota: 0 de 5 estrelas0 notasPostgreSQL: Banco de dados para aplicações web modernas Nota: 5 de 5 estrelas5/5Blockchain: Aplicações no Mundo Real e Compreensão Nota: 0 de 5 estrelas0 notasO Próximo Nível de Investimento em Criptomoedas Nota: 3 de 5 estrelas3/5PL/SQL: Domine a linguagem do banco de dados Oracle Nota: 0 de 5 estrelas0 notasLinux Essentials: um guia do sistema operacional Linux para iniciantes Nota: 5 de 5 estrelas5/5Programação Para Internet Nota: 0 de 5 estrelas0 notasProgramando Em Java Com Banco De Dados Nota: 0 de 5 estrelas0 notasNoSQL: Como armazenar os dados de uma aplicação moderna Nota: 0 de 5 estrelas0 notasProgress Openedge Nota: 0 de 5 estrelas0 notasLinguagem De Consulta Estruturada (sql) Nota: 0 de 5 estrelas0 notasArmazenando dados com Redis Nota: 0 de 5 estrelas0 notasFundamentos Do Microsoft Azure Nota: 0 de 5 estrelas0 notasApache Cassandra: Escalabilidade horizontal para aplicações Java Nota: 0 de 5 estrelas0 notasE-book LGPD Ninja 2ª edição: Entendendo e implementando a LGPD na Empresa Nota: 0 de 5 estrelas0 notasPublicadores de dados: da gestão estratégica à abertura Nota: 0 de 5 estrelas0 notasRedes Convergentes Nota: 0 de 5 estrelas0 notasApache Lucene: Sistemas de busca com técnicas de Recuperação de Informação Nota: 0 de 5 estrelas0 notas
Avaliações de Mongodb - O Banco De Dados Nosql Mais Utilizado Da Atualidade
0 avaliação0 avaliação
Pré-visualização do livro
Mongodb - O Banco De Dados Nosql Mais Utilizado Da Atualidade - Marcio Porto Feitosa
MongoDB - o banco de dados NoSQL
mais utilizado da atualidade
Uma introdução com instalação, comandos e
aplicações em Java
Marcio Porto Feitosa
Edição 1
2022
Edição independente
1
Sobre o autor
Desenvolvedor e instrutor em cursos EAD.
Escritor de livros de Tecnologia da Informação.
Escritor de obras de ficção.
Foi professor na Universidade Presbiteriana Mackenzie e nas Faculdades Metropolitanas Unidas.
Tem mestrado e doutorado em Inteligência Computacional.
Especialista em Análise e Desenvolvimento de Sistemas.
Bacharel em Engenharia Eletrônica.
2
Outras obras do autor:
Aspectos de Desempenho em Sistemas com Banco de Dados Clube de Autores (edição independente) - disponível em http://clubedeautores.com.br e em http://amazon.com.br
Fundamentos de Banco de Dados
Clube de Autores (edição independente) - disponível em http://clubedeautores.com.br e em http://amazon.com.br
Iniciação à Programação de Computadores
Editora Ciência Moderna
3
Sobre este livro
O que é
Este livro apresenta o gerenciador de banco de dados MongoDB da categoria NoSQL orientado a documentos. Não se trata das famigeradas bíblias
, pois aborda o tema de forma introdutória, porém completa no que diz respeito ao conteúdo mínimo necessário para se poder começar a utilizá-lo.
Também não é instigado nenhum tipo de rivalidade entre esse ou aquele tipo de gerenciador de banco de dados. Muito pelo contrário, estar-se-á falando de um produto que tem seus pontos fortes e fracos da mesma forma que outros também os têm.
A quem está pode interessar
Estudantes dos cursos de Análise de Sistemas, Sistemas de Informação, Ciência da Computação e cursos assemelhados podem se beneficiar satisfatoriamente deste conteúdo, assim como profissionais que pretendem iniciar trabalhos envolvendo o MongoDB. Gestores também podem se beneficiar no sentido de conhecer este gerenciador para avaliar sua aplicação nas suas organizações.
4
Como está organizado
Em uma sequência de propósito didático, após a introdução ao gerenciador e como instalá-lo, o livro apresenta os comandos em janela de terminal (aplicativo de linha de comando) em uma ordem crescente de grau de dificuldade, através de exemplos. A seguir é implementado um aplicativo na arquitetura Java Swing utilizando-se o Mongo Java Driver. E, por fim, apresentados comandos complementares em linha de comando e respectivas codificações em Java.
Espero que lhe seja útil.
São Paulo, 13 de janeiro de 2021
5
Conteúdo
Sobre este livro ................................................................................. 4
O que é .......................................................................................... 4
A quem está pode interessar ........................................................ 4
Como está organizado ................................................................... 5
Bancos com estrutura orientada a Documentos ......................... 14
Bancos com estrutura orientada a Chave-Valor .......................... 15
Bancos com estrutura orientada a Colunas ................................. 16
Bancos com estrutura orientada a Grafos ................................... 16
O MongoDB ..................................................................................... 17
Instalação .................................................................................... 19
Ativando o serviço ....................................................................... 20
Os primeiros comandos ............................................................... 23
Criando um novo banco de dados e criando collections ............. 26
Inserindo dados nas collections ................................................... 28
Localizando dados nas collections ............................................... 32
Localização de dados com comandos mais complexos ............... 35
Obtendo listagens diversas ......................................................... 39
Atualizando dados ....................................................................... 43
Excluindo documentos ................................................................ 45
Trabalhando no modo autenticado ................................................. 48
6
Criando um novo usuário ............................................................ 48
Tipos de permissão existentes .................................................... 53
Acessando o MongoDB com Java .................................................... 57
Tela login - conexão e autenticação no banco de dados ............. 59
A tela Menu e a tela de Pacientes ............................................... 63
Abrindo um parêntesis - a classe BasicDBObject ......................... 67
Voltando ao sistema: incluindo um novo paciente ..................... 72
Alterando dados de um paciente ................................................ 73
Excluindo um paciente ................................................................ 75
Localizando dados no banco: consultas diversas e considerações de
desempenho ................................................................................... 76
Cláusula distinct .......................................................................... 80
Consultas em faixas de valores.................................................... 81
$gt, $lt, $gte, $lte .................................................................... 81
$ne .......................................................................................... 83
$in ........................................................................................... 84
Funções de Agregação................................................................. 85
$lookup ................................................................................... 85
Voltando ao nosso sistema - a tela Cadastro de Médicos ............... 90
A tela Agenda .................................................................................. 91
Campos data e índices ................................................................. 93
Datas ....................................................................................... 93
7
Índices ..................................................................................... 96
Voltando ao nosso aplicativo ...................................................... 99
Outros comandos do MongoDB .................................................... 104
Aggregate - há vida além do lookup .......................................... 105
count ..................................................................................... 105
group ..................................................................................... 108
exists ..................................................................................... 114
E para finalizar: os atributos multivalorados ................................. 118
Arrays de elementos ................................................................. 119
Arrays de documentos .............................................................. 124
E como fica em Java?................................................................. 131
Conclusão ...................................................................................... 136
APÊNDICE A ................................................................................... 138
Código Java do Método de Validação do Login ......................... 138
APÊNDICE B - Tela de Pacientes .................................................... 139
Código do botão Enviar
.......................................................... 139
Código do método localizar
.................................................... 139
Código do método incluir
....................................................... 140
Código do método alterar
...................................................... 141
Código do método excluir
...................................................... 142
APÊNDICE C ................................................................................... 143
Biblioteca de utilitários - Utils.java ............................................ 143
8
Referências .................................................................................... 146
9
Introdução
O gerenciador de banco de dados do tipo relacional é o mais utilizado na atualidade, sendo os três mais, segundo o site db-engines.com, o Oracle (comercial) da Oracle Corporation, o MySQL
(freeware), atualmente sob a tutela da Oracle, que conta também com uma versão comercial e o SQL Server (comercial) da Microsoft Corporation.
Após o seu surgimento, esta plataforma dominou o mercado por oferecer uma série de vantagens em relação aos tipos até então vigentes, entre elas a flexibilidade, facilidade no manuseio e, principalmente, padronização entre os diversos produtos, possibilitando a portabilidade e também o acesso por diferentes linguagens de programação.
O gargalo, em especial em ambientes em que há grandes quantidades de acessos simultâneos, como, por exemplo, no Facebook, Google, Amazon.com e até em ambientes menores, é que o modelo relacional opera sob o princípio da regra ACID (sigla, em português, de Atomicidade, Consistência, Isolamento e Durabilidade) em que há a garantia absoluta de que as transações entre os diversos usuários do sistema não irão interferir umas nas outras, podendo ocasionar inconsistências nos dados e consequentemente gerando informações erradas. Para que isso seja possível, o controle de acesso ao banco de dados deve, obrigatoriamente, ser centralizado e o aumento na capacidade de um recurso centralizado só se dá com o aumento da capacidade 10
desse nó central. Não é simples adicionar recursos em paralelo para somar os esforços sem que se perca o controle da regra ACID.
Existem propostas de solução, para o crescimento horizontal, que são as estruturas distribuídas, onde o banco de dados é espalhado por