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