Banco de Dados

SBD

SGBD (sistema gerenciador de banco de
dados)

BD (Banco de dados)

click to edit

Aplicação(ões) são responsável(is) pela comunicação com a SGBD, no qual se comunica com o banco de dados. É possível instanciar várias aplicações assim como é possível com os banco de dados.

Características

Gerenciar a redundância de dados

Gerenciar o controle de acesso

Eficiência em consultas

Backup e Restauração

Segurança

Objetivos

Eliminar ou reduzir redundância e inconsistência de dados; dificuldade no acesso aos dados, isolamento dos dados, problema de Integridade, entre outros;

Vantagens

click to edit

Controle de acesso;

❑ Processamento eficiente de consultas;

❑ Backup e restauração;

❑ Recuperação de falhas;

❑ Relações complexas entre dados;

❑ Restrições de integridade;

SGBD

Conceito: Um banco de dados relacional é um tipo de banco de dados que organiza dados em tabelas que podem ser relacionadas umas às outras por meio de chaves primárias e estrangeiras.

SQL

Data Transaction Language: sequência de operações executadas como uma única unidade lógica de trabalho.

Para gerenciar as transações é necessário conhecer as propriedades: ACID (acrônimo de Atomicidade,
Consistência, Isolamento e Durabilidade).

Relacional (vantagens e desvantagens)

Adequados para mais de 90% das aplicações;

O banco de dados pode ser modificado sem precisar redefinir a sua estrutura inteira;

Possui um padrão tanto no projeto quanto na linguagem de
manipulação de dados (SQL);

Desvantagens:
A busca de dados pode levar mais tempo se comparado com outros modelos;
Com o aumento da quantidade e do fluxo de informações, o modelo relacional sofre com limitações de escalabilidade (Big Data).

NoSQL

refere-se a um conjunto de tecnologias de banco de dados projetadas para armazenar, recuperar e gerenciar dados de maneira que difere dos sistemas de banco de dados relacionais tradicionais.

Big Data: 3Vs

Volume, Velocidade e Variedade

Modelo de dados

Documentos

Gráficos

Chave-valor

Tabelas

Exemplos

MongoDB, Couchbase, Redis, Aerospike, Cassandra, Apache Hbase, Neo4j e InfiniteGraph

não relacional

Vantagens

Desvantagens

Não exige que todas as entidades tenham a mesma estrutura

Flexibilidade

Facilidade em adicionar novos dados

Tecnologia nova, atualização rápida da tecnologia, comunidade nova, suporte falho, falta de documentação;

Ausência das propriedades ACID e integridade referencial

Modelo de Dados

Estrutura de um banco de dados (Tipos, relacionamentos ou restrições que se aplicam aos dados)

Tipos

Hierárquico

Rede

Relacional

Orientado a objetos

Não relacional