01 Bancos de Dados Relacionais e Não Relacionais Flashcards
Quem e quando foram criados os Bancos de Dados Relacionais?
Quais os 3 SGBDs (Sistema de Gerenciamente de Bancos de Dados) mais conhecidos nos dias atuais?
SGBDs relacionais mais conhecidos hoje são
Edgar Codd 1970 IBM
MySQL (Oracle)
Oracle (Oracle)
SQL Server (Microsoft)
Cite características do Modelo de Relacional
Organizado em tuplas, normalizado e possui integridade referencial
Descreva as 4 conceitos básicos do banco de dados relacional (ACID):
Atomicidade (a transação é executada totalmente ou não é executada = 0 ou 1)
Consistência (sistema sempre consistente após uma operação, “mudanças são imediatas”)
Isolamento (transação não sofre interferência de outra transação concorrente)
Durabilidade (o que foi salvo não é mais perdido)
Força a consistência ao final de cada transação
Um banco de dados é uma coleção de dados relacionados e acessíveis
Os dados são fatos que podem ser gravados e possuem um significado implícito
3 tipos de dados que podem ser armazenados:
Estruturados (“tabela”)
Semiestruturados
Desestruturados (“vídeo)
Pacote de software que facilita a criação e manutenção de um banco de dados?
SGBDs (Sistema de Gerenciamente de Bancos de Dados)
Programa para manipular banco de dados + Banco de dados == ?
Sistema de Banco de Dados
Vantagens do SGDB
Processamento eficiente de consultas
Podemos usar índeces (“indexes”) pra fazer isso ainda mais rápido
Baseado em estruturas de dados (árvores == “trees”)
Facilita backup / recuperação
Força para que cada dado seja do tipo correto
Modelo de dados?
Conjunto de conceitos que se usa para descrever a estrutura do Banco de Dados (BD) e certas restrições que o banco deve garantir.
Quais as 3 categorias de modelos de dados?
Conceituais (alto nível) - conceitos que descrevem os dados como os usuários percebem / baseado em entidades, atributos e relacionamentos (independentes de SGDB)
Físicos
Quais as 3 categorias de modelos de dados?
Conceituais (alto nível) - conceitos que descrevem os dados como os usuários percebem / baseado em entidades, atributos e relacionamentos (independentes de SGDB) - alta abstração (conseguimos puxar muito)
Físicos (baixo nível) - conceitos que descrevem como os dados estão armazenados no computador (tipos e tamanho de registros)
Dados lógicos (representativos ou de implementação) - “intermediário” entre os 2 anteriores - modelo relacional é um exemplo
Defina esquemas.
Descrição da estrututra de um banco de dados.
(textual ou gráfica).
Diagrama esquemático apresenta a estrutura de cada tipo de registro, mas não as instâncias reais dos registros.
Defina Instâncias ou Snapshots.
A cada novo registro inserido ou removido, o estado (instância) do banco se altera.
5 subgrupos de linguage SQL?
Linguagem de Definição de Dados (DDL - Data Denition Language): usada para definição dos esquemas
Linguagem de Manipulação de Dados (DML - Data Manipulation Language): utilizada pelos usuários para incluir, alterar, excluir, etc
Linguagem de Controle de Dados (DCL - Data Control Language) - utilizada para conceder e retirar privilégios de usuários de BD em objetos de BD (grant, revoke)
Linguagem de Consulta de Dados (DQL - Data Query Language) - recuperação de dados (???)
Linguagem de Controle de Transação (TCL - Transaction Control Language) - utilizada para lidar com transações no banco de dados
Simplicidade, Eficiência, Formal, teoria matemática das relações entre conjuntos + álgebra
Representa entidade e relacionamento
Linguagem unificada para definição e manipulação de dados
Modelo Relacional
Tupla ==
Linha
Cada linha representa uma entidade ou relacionamento do mundo real
Cada uma pode ser interpretada como um fato, uma determinada instância da afirmação
Atributo ==
Coluna
As colunas são atributos que dão valores a cada linha
Podem existir atributos multivalorados (ex: mais de um telefone)
Relação ==
Tabela
Domínio ==
Conjunto de valores que um atributo pode ter
Conjunto de valores indivisíveis (atômicos) que um atributo pode ter
O que é definido como conjunto mínimo de valores dos atributos que identifica unicamente uma tupla (linha).
Garante restrição de unicidade!
Chave
podem existir chaves compostas
O que é definido como conjunto mínimo de valores dos atributos que identifica unicamente uma tupla (linha).
Garante restrição de unicidade!
Chave
podem existir chaves compostas
Não pode ter valor nulo
Um atributo em um coluna pode ser não chave, mas pode fazer referência a uma coluna chave de outra tabela. Usamos o nome Chave Estrangeira ou Foreign Key (FK) para este tipo de atributo. Quais são as 2 regras que estas devem seguir?
Os atributos de FK de R1 têm o mesmo domínio da PK de R2
Um Valor de FK de uma tupla T1 deve ser igual a um valor de PK para uma tupla T2 ou ser null (nulo)
Quais as operações básicas para atualizar as relações?
INSERT (Inserir)
UPDATE (Alterar)
DELETE (Excluir)