A Construção de Sistemas de Gerenciamento de Banco de Dados
Por: wemerson7 • 24/7/2020 • Dissertação • 1.817 Palavras (8 Páginas) • 452 Visualizações
Universidade Federal do Ceará[pic 1]
Campus Quixadá
Curso: Sistemas de Informação
Disciplina: Construção de Sistemas de Gerenciamento de Banco de Dados
Aluno: Wémerson Monteiro Damasceno
Matrícula: 402856
Atividade de Revisão Unidades 1-Arquitetura de SGBDs 2-Organização de Arquivos
Parte 1) Teórica
1.1) Por que você escolheria um sistema de banco de dados em vez de simplesmente armazenar dados em arquivos do sistema operacional? Quando faria sentido não usar um sistema de banco de dados?
Eu escolheria um sistema de banco de dados quando a aplicação tiver que lidar com uma grande quantidade de dados e que esses dados tivessem algum valor para o negócio, ou quando esses dados tem que ser armazenados de forma segura, recuperação e consultas desses dados e etc.
Não faria sentido usar um sistema de banco de dados em aplicações pequenas com poucos dados, em que os dados são imutáveis.
1.2) Explique a diferença entre independência lógica e física de dados fornecida pelo SGBD.
Independência lógica: Aborda a independência das camadas conceituais e das camadas externas. Gera uma abstração útil para o desenvolvedor usuário final.
Independência física: Aborda a independência das camadas conceituais e físicas, permitindo que seja possível fazer mudanças no esquema interno sem a necessidade de alterar o esquema conceitual. Gera uma abstração útil na estrutura lógica do banco para o projetista de banco de dados.
1.3) Explique a diferença entre esquemas externos, internos e conceituais. Como essas diferentes camadas de esquema estão relacionadas aos conceitos de lógica e independência de dados físicos?
Externos: Descreve visões do banco de diferentes usuários, mostra ao usuário apenas o que ele está interessado.
Internos: Descreve como é a estrutura de armazenamento físico, informa detalhes de armazenamento de dados e caminhos de acessos às bases de dados.
Conceitual: É uma descrição que engloba todo o banco de dados, descrevendo principalmente os tipos de relacionamentos, tipos de dados, entidades e etc.
Se relacionam da seguinte forma, a independência de dados físicos é a independência das camadas conceituais e físicas, e a independência lógica é a independência das camadas conceituais e das camadas externas.
1.4) Quais são as responsabilidades de um DBA? Se assumirmos que o DBA nunca estiver interessado em executar suas próprias consultas, o DBA ainda precisa entender a otimização de consultas? Por quê?
- O DBA é responsável por várias tarefas que são consideradas críticas como por exemplo:
- Interagir com os usuários do sistema para compreender quais dados devem ser armazenados no SGBD e como eles serão mais provavelmente utilizados.
- Projetar o esquema conceitual e o esquema físico, assegurar
- Assegurar que o acesso não autorizado aos dados não seja permitido
- Tomar medidas para assegurar que, caso o sistema falhe, os usuários possam continuar a acessar o máximo possível dos dados não corrompidos.
- Deve restaurar os dados a um estado consistente.
- Modificar o banco de dados, em particular os esquemas conceituais e físicos, para assegurar desempenho adequado conforme os requisitos sofrem alterações.
- Ele deve entender de consultas porque ele é o administrador do banco ou seja, ele é responsável pelo desempenho do banco, pela segurança, manutenção e etc, e para ter certeza que o banco atende esses critérios ele deve ter conhecimento sólido nessa área.
1.5) Qual das seguintes opções desempenham um papel importante na representação de informações sobre o mundo real em um banco de dados? Explique brevemente.
1. A linguagem de definição de dados.
É importante, pois ela é utilizada para definir os esquemas externos e conceituais, ou seja quando queremos passar para o SGBD as representações do mundo real, e tem participação importante nesse processo de representação.
2. A linguagem de manipulação de dados.
É razoavelmente importante, pois a linguagem de manipulação de dados como o nome diz serve apenas para manipular os dados no banco, logo ela não tem bastante influência na representação dos das informações sobre o mundo real.
3. O gerenciador de buffer.
Não, pois o gerenciador de buffer é responsável por carregar as páginas do disco para a memória principal conforme necessário em resposta às solicitações de leitura, e isso não influencia na representação das informações sobre o mundo real.
4. O modelo de dados.
É importante, o modelo de dados tem uma grande quantidade de construtores que ajudam a representar um cenário de aplicação real, pois é ele quem nos fornece a abstração de dados para representar o mundo real.
1.6) Descreva a estrutura de um SGBD. Se o seu sistema operacional for atualizado para oferecer suporte a algumas novas funções nos arquivos do sistema operacional (por exemplo, a capacidade de forçar uma sequência de bytes ao disco), quais camadas do SGBD você precisaria re-escrever para aproveitar essas novas funções?
A estrutura de um SGBD é composta por nível interno, nível conceitual e nível externo.
Nível interno: Usa um modelo de dados que mostra a estrutura de armazenamento físico do banco de dados, os detalhes dos dados guardados e os caminhos de acesso.
Nível conceitual: Efetua uma descrição total da estrutura do banco de dados mas não oferece detalhes dos dados guardados no banco de dados.
Nível externo: Descreve as visões do banco de dados para um grupo de usuários que mostra quais usuários terão acesso à esse banco.
A camada a ser re-escrita após a atualização do SO é a de nível conceitual, ela é quem cuida da estrutura do banco de dados.
1.7) O que é um arquivo de heap? Quais as vantagens e desvantagens?
É um arquivo não ordenado, ou seja qualquer registro que for adicionado vai ser colocado em qualquer lugar que tenha espaço.
Vantagens:
- Suporta a recuperação de todos os registros ou a de determinado registro especificado pelo seu rid.
- Possui boa eficiência de armazenamento
- Suporta varredura e inserção de registros rápidas
Desvantagens:
- É lento em pesquisas
- É lento em exclusões
1.8) Em que situação um arquivo ordenado é mais indicado e por quê?
Arquivos ordenados como o próprio nome já diz, são arquivos que são ordenados por uma determinada chave ou valor, ele é indicado quando o banco é mais requisitado para fazer consultas, e menos quando for fazer inserções.
...