7. Banco De Dados Flashcards
O que é a natureza autodescritiva (ou de autodescrição) de um sistema de banco de dados?
Que o banco de dados não contém apenas os dados, mas também uma definição completa da estrutura e restrições desses dados (se é um número, uma data, etc)
O que é a característica do isolamento entre programas e dados?
Quer dizer que os dados e o programa não se misturam. Se eu altero os dados, não altero o programa, e vice-versa
Qual é a unidade lógica de trabalho de um banco de dados? Quais as suas quatro características?
A unidade lógica é a transação.
Características = ACID
Atomicidade, consistência, isolamento e durabilidade
Qual a consequência da atomicidade de uma transação?
Atomicidade = transação é uma unidade de processamento que deve ser executada até o fim ou não ser executada de forma alguma.
Consequência = é tudo ou nada. Se não for completada integralmente, volta tudo.
Commit e rollback: o que tem a ver com a atomicidade de uma transação?
Commit = tudo correu bem com a transação = todos os processos foram completados = transação feita
Rollback = ocorreu alguma falha = um dos elementos da transação não ocorreu = transação não feita = operações desfeitas e rolou de volta para o estado anterior.
O que diz a característica de Consistência de uma transação?
Ela deve levar um banco de de dados de um estado consistente a um outro estado consistente.
Ex: não pode ter mais de uma pessoa com o mesmo CPF
O que é a característica de isolamento das transações?
Evita que ações paralelas e simultâneas interfiram no processo.
O que é a característica de durabilidade das transações?
Que as transações bem sucedidas devem persistir (durar!) mesmo em casos de queda de energia/travamento/erro
(As transações ou seus efeitos são registrados numa memória não-volátil para proteção)
Quais são as figuras que:
1. Padronizar os dados, entendendo o contexto da organização
2. Conceder acesso ao banco de dados, organizar os backups e corrigir falhas na execução de transações?
- Administrador de dados
- Administrador de banco de dados
O que é abstração de dados?
É ISOLAR, separar as informações do banco de dados conforme o nível de autorização de uso do sistema.
Quais são os três esquemas da arquitetura ANSI-SPARK?
Separa os usuários em três visões:
1. Nível externo (da visão)
2. Nível lógico (conceitual)
3. Nível físico
O que é o nível externo da arquitetura ANSI-SPARK?
É o nível de visão do usuário comum, do usuário externo. Não tem a escolha aos códigos e as estruturas.
O que é o nível lógico da arquitetura ANSI-SPARK?
É o nível intermediário.
É o nível onde se define as informações sobre os dados (se é em número/texto/datas)
Não exibe toda a estrutura, mas pode apresentar estruturas de tabelas e códigos SQL
Que tipo de usuário da arquitetura ANSI-SPARK consegue manipular os dados e definir se um dado será um texto, um número ou uma data?
O usuário conceitual (ou lógico)
É o que consegue descrever entidades.
O que é o nível físico da arquitetura ANSI-SPARK? Quem o usa?
É o nível mais baixo (mais interno) de abstração do banco de dados. É quem vê todos os códigos.
Quem usa é o desenvolvedor do banco de dados.
Quem detém o mais alto nível de abstração de dados numa arquitetura ANSI-SPARK?
O nível externo - o usuário final, pois não vê nenhum código de programação, “só” o sistema já pronto.
Qual a diferença entre independência lógica e física de um sistema?
Independência lógica = posso alterar o esquema conceitual (lógico) sem precisar modificar os esquemas externos
Independência física = posso alterar o esquema interno sem precisar alterar o esquema conceitual (lógico)
Quais são os três modelos de projetos de banco de dados?
- Modelo conceitual
- Modelo lógico
- Modelo físico
Qual a diferença nos nomes das três camadas da arquitetura ANSI-SPARK para os três tipos de modelos de projetos de banco de dados?
ANSI-SPARK: segunda camada é chamada lógico/conceitual
Projeto de banco de dados: a camada mais voltada para o usuário é o modelo conceitual e a segunda é o modelo lógico.
Qual modelo de projeto de banco de dados usa atributos, entidade-relacionamentos?
Ele depende de hardware ou software específico?
Modelo conceitual
Não depende de hardware e software específico, serve pra todos.
Qual modelo constitui representação para um banco de dados específico? Ele depende de algum software?
É o modelo lógico. Ele vai depender do tipo de SGBD que será usado (não o programa especifico, só o tipo)
Qual modelo de projeto de banco de dados é totalmente dependente do programa SGBD usado?
O modelo físico, pois é o modelo que mostra os códigos.
Em qual nível da arquitetura ANSI-SPARK estão descritos os caminhos de acesso para o banco de dados?
No nível interno.
O que é um deadlock?
É um local mútuo: dois ou mais processos bloqueiam/travam um ao outro.
Qual a diferença entre esquema e instância do banco de dados?
Esquema = descrição da ESTRUTURA dos dados
Instância = os dados em si (a coleção das informações)
A necessidade de definir todas as restrições de integridade de um banco se relaciona com qual propriedade ACID?
Consistência
Ex: definir que não pode haver dois CPF com o mesmo número -> Pois aí uma transação que mude um CPF para um número igual a outro (ilegal) impediria a transação, pois levaria o banco de dados a um estado inconsistente