Alura > Cursos de Data Science > Cursos de NoSQL > Conteúdos de NoSQL > Primeiras aulas do curso MongoDB: validando dados

MongoDB: validando dados

Esquema - Apresentação

Olá! Eu sou Danielle Oliveira, instrutora da Escola de Dados, e te acompanharei nos seus estudos durante o curso de MongoDB: validando dados. Vamos conhecer um pouco do nosso percurso.

Autodescrição: Sou Danielle, uma mulher de pele morena, cabelos cacheados e olhos castanhos. Estou vestindo uma blusa na cor rosa e sentada. Ao fundo, há uma parede branca sem decoração, com uma iluminação na cor verde.

Aula 1:

Aula 2:

Aula 3:

Aula 4:

Alua 5:

Vamos iniciar nossos estudos?!

Esquema - Conhecendo o projeto

A nossa equipe está preparada para dar os próximos passos nos estudos sobre o MongoBD, que é um banco de dados NoSQL, baseado em documentos.

Para desenvolvermos esse projeto, utilizaremos a base de dados da empresa Show Bank, um banco digital que está crescendo rapidamente. Esse crescimento gerou alguns problemas na base de dados do MongoDB, por exemplo:

O motivo desses problemas é que o MongoDB possui um esquema flexível, por isso, não é necessário definir a estrutura das coleções no momento em que são criadas. Inclusive, podemos criar coleções inserindo dados pela primeira vez e, consequentemente, ter o mesmo campo com diversos tipos de dados armazenados em uma mesma coleção.

A partir disso, podemos pensar: é possível aplicar regras diretamente no MondoDB para validar os dados, sem recorrer à aplicação?

A resposta é sim. Conseguimos aplicar essas regras utilizando a modelagem de dados. Assim como nos bancos de dados relacionais, também podemos modelar os nossos dados antes de inseri-los no nosso banco. Um dos recursos disponibilizados pelo MongoDB, através da modelagem de dados, é a validação de esquema.

A validação de esquema nos permite criar regras para as nossas coleções. Vamos entender um pouco mais sobre o funcionamento da modelagem de dados no MongoDB?

Esquema - Modelagem de dados

Uma das grandes dificuldades para quem está começando a trabalhar com banco de dados não relacional é entender como modelar os dados antes de armazená-los no MondgoDB, dentro do banco de dados.

Preciso modelar em um banco de dados NoSQL?

Para responder essa questão, é necessário entender a aplicação, saber se precisaremos de mais leitura ou mais armazenamento, ou seja, precisamos entender como estruturar o banco para alcançarmos nosso objetivo e evitarmos problemas futuros, como os que a Show Bank tem enfrentado.

Além disso, precisamos aprender a utilizar o MongoDB, que oferece um esquema flexível e isso facilita bastante o trabalho. Mas, se não soubermos lidar com ele, podemos ter muitos problemas ao utilizá-lo em aplicação.

Existem diferentes formas de modelar um dado quando trabalhamos com bancos de dados não relacionais, porque eles possuem estruturas também distintas. Nos bancos de dados relacionais, existem quatro formas normais com as quais normalizamos o banco. Não é possível aplicar essas regras aos bancos de dados não relacionais, como o MongoDB.

Primeiros passos

Antes de passarmos para a modelagem de dados, precisamos definir a necessidade da aplicação e qual banco de dados utilizaremos, se é relacional ou não relacional, por exemplo, o MongoDB ou algum outro banco relacional.

Então, o primeiro passo é entender qual o foco da aplicação. Há alguns pontos que podemos considerar para a escolha do banco de dados.

Bancos de dados relacionais:

Normalmente utilizamos os bancos de dados relacionais para relacionamentos entre diversas entidades, por exemplo, entre uma tabela e outra. Além das junções, os bancos de dados relacionais são a melhor opção para aplicações que precisam usar "chaves estrangeiras" e "JOINs".

MongoDB:

O MongoDB é mais indicado para grandes quantidades de dados desestruturados, por exemplo, vídeos e fotos. Além disso, por ter esquema flexível, ele nos permite trabalhar com esquemas desconhecidos. Significa que não precisamos definir imediatamente o esquema que utilizaremos, já que é possível ter campos diferentes em um mesmo documento.

Durante uma década, o MongoDB foi utilizado por diversas empresas e aplicações. Neste período, seu time fez um compilado, apresentando quais tipos de aplicações utilizavam determinadas padronizações, isto é, como essas aplicações eram modeladas.

Esses dados foram reunidos em uma tabela e, nela, encontramos diversos exemplos de aplicações que utilizam o MongoDB, como os catálogos, que envolvem vendas de produtos e servições e o "mobile", que são os aplicativos para celulares e tablets.

A equipe identificou que várias dessas aplicações tinham uma mesma forma de modelar os dados, a partir disso, surgiu a padronização. Existem diversas padronizações, por exemplo: a aproximação, voltada para questões estatísticas; e a de atributos, normalmente utilizada em aplicações que buscam campos semelhantes.

Para aprender mais sobre as padronizações, basta acessar o Para saber mais: Próximo passo, que está logo abaixo desse vídeo.

Mas, será que precisamos utilizar necessariamente algum desses padrões para modelar o nosso projeto? A resposta é não. Podemos criar as nossas próprias padronizações, de acordo com nossas necessidades.

Então, vamos entender um pouco mais sobre como funciona o esquema flexível no MongoDB?

Sobre o curso MongoDB: validando dados

O curso MongoDB: validando dados possui 102 minutos de vídeos, em um total de 48 atividades. Gostou? Conheça nossos outros cursos de NoSQL 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 NoSQL acessando integralmente esse e outros cursos, comece hoje!

Plus

De
R$ 1.800
por
12X
R$109
à vista R$1.308
  • Acesso a TODOS os cursos por 1 ano

    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.

  • Certificado

    A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.

  • Mentorias com especialistas

    No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.

  • Comunidade exclusiva

    Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.

  • Acesso ao conteúdo das Imersões

    Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.

  • App Android e iOS para estudar onde quiser

    Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.

Matricule-se

Pro

De
R$ 2.400
por
12X
R$149
à vista R$1.788
  • Acesso a TODOS os cursos por 1 ano

    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.

  • Certificado

    A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.

  • Mentorias com especialistas

    No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.

  • Comunidade exclusiva

    Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.

  • Acesso ao conteúdo das Imersões

    Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.

  • App Android e iOS para estudar onde quiser

    Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.

  • Luri, a inteligência artificial da Alura

    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.

  • Alura Língua - Inglês e Espanhol

    Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.

Matricule-se

Ultra

12X
R$209
à vista R$2.508
  • Acesso a TODOS os cursos por 1 ano

    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.

  • Certificado

    A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.

  • Mentorias com especialistas

    No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.

  • Comunidade exclusiva

    Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.

  • Acesso ao conteúdo das Imersões

    Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.

  • App Android e iOS para estudar onde quiser

    Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.

  • Luri, com mensagens ILIMITADAS

    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.

  • Luri Vision, a IA que enxerga suas dúvidas

    Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.

  • Alura Língua - Inglês e Espanhol

    Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.

  • 6 Ebooks da Casa do Código

    Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.

Matricule-se
Conheça os Planos para Empresas

Acesso completo
durante 1 ano

Estude 24h/dia
onde e quando quiser

Novos cursos
todas as semanas