Big Data e NoSQL - Aula 09/12 - Bancos de Dados 2020.2

Big Data e NoSQL - Aula 09/12 - Bancos de Dados 2020.2

Introdução ao Fechamento do Curso de Banco de Dados

Revisão dos Conteúdos Estudados

  • O vídeo faz parte da disciplina de banco de dados da Unicamp e inicia um fechamento sobre os conteúdos estudados durante o semestre.
  • O foco será em tópicos como bancos de dados NoSQL e Big Data, além de revisitar conceitos abordados no início do curso.

Arquitetura Moderna de Bancos de Dados

  • A arquitetura moderna envolve a interação entre aplicações e SGBDs (Sistemas de Gerenciamento de Banco de Dados), que gerenciam todos os dados armazenados.
  • Foram discutidas linguagens para manipulação de dados, modelagem conceitual, lógica e física, além do armazenamento efetivo dos dados.

Mudanças no Cenário Atual: Big Data e NoSQL

Conceitos Fundamentais

  • O termo "Big Data" refere-se ao aumento significativo no volume e na variedade dos dados disponíveis.
  • A modelagem semântica se torna importante com a interconexão dos dados, levando à necessidade de novas abordagens para processamento e armazenamento.

Valor dos Dados na Economia Moderna

  • Os dados são considerados extremamente valiosos na economia atual, superando até mesmo o valor do petróleo.
  • Empresas que utilizam bem os dados estão se destacando no mercado devido à sua capacidade de gerenciamento eficaz.

Desafios da Produção Gigantesca de Dados

Crescimento Exponencial dos Dados

  • Exemplos como o Genoma Humano ilustram a imensa quantidade de informações geradas atualmente.
  • A Lei de Moore sugere que o poder computacional dobra anualmente, mas o crescimento dos dados ocorre em uma taxa muito mais rápida.

Arquitetura Distribuída

  • Há uma tendência crescente em utilizar múltiplos computadores menores em vez de grandes sistemas centrais para processar esses volumes massivos de dados.

Teorema CAP: Consistência vs. Disponibilidade

Introdução ao Teorema CAP

  • O teorema CAP discute as limitações em sistemas distribuídos quanto à consistência, disponibilidade e tolerância a partições.

Garantias Necessárias

  • Consistência: Garante que as leituras retornem sempre a versão mais recente ou um erro.
  • Disponibilidade: Assegura que sempre haverá uma resposta às requisições feitas aos dados.
  • Tolerância a Partições: Permite que o sistema opere mesmo com perda ou atraso nas mensagens entre nós.

Princípios de Banco de Dados e Sistemas Distribuídos

Introdução aos Princípios ACID

  • A palestra aborda os quatro princípios fundamentais dos bancos de dados: atomicidade, consistência, isolamento e durabilidade (ACID).
  • Para sistemas distribuídos, é necessário flexibilizar esses princípios para garantir a tolerância a falhas e a disponibilidade.

Compromissos com Consistência

  • Alguns sistemas de armazenamento priorizam a tolerância à partição e a velocidade em detrimento da consistência.
  • Exemplo prático: ao acessar uma rede social como o Facebook, pode-se não ver imediatamente um post recente devido à falta de consistência temporária.

Consistência Eventual

  • Bancos de dados NoSQL permitem um tipo de consistência chamada "consistência eventual", onde as mudanças nos dados são propagadas gradualmente.
  • Isso significa que uma leitura pode não retornar os dados mais atualizados imediatamente.

Conceito de NoSQL

  • O conceito NoSQL surge como uma alternativa aos bancos relacionais tradicionais, que seguem rigidamente os princípios ACID.
  • Os bancos NoSQL oferecem flexibilidade no esquema e mecanismos diferentes para armazenamento e recuperação de dados.

Aplicações em Tempo Real

  • As bases NoSQL são cada vez mais utilizadas em aplicações web em tempo real, buscando designs adequados para facilitar o armazenamento e recuperação eficientes.
Video description

Visão panorâmica dos tópicos tratados no curso e do cenário atual de abordagens e arquiteturas no cenário de Big Data e NoSQL. Noção de NoSQL e introdução a problemas modernos por trás dos modelos NoSQL. CAP Theorem indicando que não é possível a um sistema de armazenamento distribuído oferecer simultaneamente três garantias: Consistency, Availability and Partition-tolerance. Apresentação dos dois próximos vídeo em que serão tratados os seguintes aspectos do cenátio Big Data e NoSQL: impacto no modelo lógico/físico e impacto no armazenamento/rede.