Conceitos Fundamentais de Banco de Dados e SGBD
Classificado em Computação
Escrito em em
português com um tamanho de 11,39 KB
Banco de Dados
É um conjunto de arquivos relacionados entre si. Os arquivos são relacionados devido ao relacionamento existente entre as informações contidas neles.
Sistema de Banco de Dados (SBD)
É um sistema de manutenção de registros ou informação por computador ou automatizado que tem por objetivo manter as informações armazenadas e gerenciadas com segurança.
Componentes de um SBD: Dados, Hardware, Software e Usuário
Dados
Os dados de um SBD deverão ser integrados e compartilhados.
- Integrar significa eliminação da redundância. Redundância é a informação que é armazenada pelo computador mais de uma vez na mesma tabela ou arquivo no banco de dados, em tabelas ou arquivos diferentes do banco de dados ou em outras tabelas de bancos de dados diferentes. Portanto, não se pode repetir a mesma informação no banco de dados de uma empresa.
- Compartilhar significa que as informações deverão ser compartilhadas entre os diversos usuários.
Hardware
O principal hardware de um SBD é denominado servidor de banco de dados, pois é nesse hardware que é instalado o SGBD (configurado e ajustado) e com ele criado o banco de dados.
O servidor de banco de dados é um computador que possui memória RAM no mínimo razoável, capacidade alta de HD e alta velocidade I/O (que é a transferência de dados das tabelas do banco de dados para a memória RAM e vice-versa).
Há um hardware denominado de cliente que pertence ao usuário e ele se conecta com o hardware denominado servidor de banco de dados para acessar e atualizar as informações contidas no banco de dados.
Independência dos Dados
É a capacidade que possui o programa de não ser alterado quando alterações são efetuadas na estrutura de armazenamento (tabelas) ou na estratégia de acesso (índice).
Índice é uma estrutura de dados, geralmente denominada de árvore, que permite acessar o registro mais rápido. Esta é a vantagem do índice: acessar o registro mais rápido. Mas possui a desvantagem de tornar a atualização de dados lenta, principalmente a inserção de dados.
Arquitetura de um SBD (ANSI / SPARC)
Essa arquitetura tem por objetivo criar um mecanismo padrão para que todos os SGBDs sigam a mesma metodologia para alcançar a independência de dados entre os programas e as aplicações implementadas pelo analista de desenvolvimento e as tabelas no banco de dados. Essa arquitetura é dividida em três níveis:
- Nível Externo: VISÃO RH, VISÃO CONTÁBIL, VISÃO PROJETO
O nível externo contém várias visões externas, uma dada a cada conjunto de usuários. Cada visão externa corresponde a um grupo de usuários.
O nível conceitual
Esse nível descreve todas as informações que deverão ser armazenadas no banco de dados e os relacionamentos existentes entre elas. Tem como representação o MER da empresa, livre de qualquer redundância. Portanto, esta visão descreve todas as informações dos conjuntos de usuários.
O nível interno
Contém a visão que descreve fisicamente como todas as informações são armazenadas nas tabelas e como deverão ser acessadas (fisicamente).
Esquema
É o conjunto de objetos com as suas respectivas descrições implementados e armazenados no banco de dados.
Instância
É o conjunto de informações armazenadas no banco de dados em um determinado instante.
Compiladores
DDL (Data Definition Language ou Linguagem de Definição de Dados)
É responsável pelos objetos a serem criados no banco de dados. Por exemplo:
- a)
CREATE TABLE (Empregado);- b)
CREATE TRIGGER (Nome);DML (Data Manipulation Language ou Linguagem de Manipulação de Dados)
O compilador denominado DML é responsável pelas informações armazenadas nos objetos criados pela DDL.
FROM Empregado: seleciona todos os registros da tabela empregado.INSERT INTO empregado (mat, nome) VALUES ('10', 'José da Silva');DCL (Data Control Language ou Linguagem de Controle de Dados)
O compilador DCL fornece ou retira privilégios de acesso às informações armazenadas nas tabelas no banco de dados ou dos objetos do banco de dados.
GRANT;REVOKE;Mapeamento
É a correspondência entre os níveis.
Mapeamento Externo / Conceitual
É o mapeamento entre as visões externa e a visão conceitual.
O Mapeamento Conceitual / Interno
É a correspondência entre a visão conceitual e a visão interna.
Como o SGBD atende uma solicitação de um usuário
Um usuário efetua uma solicitação de consulta ao SGBD, o SGBD verifica a solicitação e processa:
- Verifica a visão externa do usuário
- Mapeamento Externo / Conceitual
- Verifica a visão conceitual
- Mapeamento Conceitual / Interno
- Busca as informações solicitadas
Independência de Dados
É a capacidade que possui um programa de não ser alterado quando alterações são efetuadas na estrutura de armazenamento (tabelas), ou em um esquema qualquer, e não é necessário alterar os esquemas anteriores ou superiores.
Independência de Dados Lógica
É a capacidade que possui de alterar o esquema conceitual e não ser necessário alterar os esquemas anteriores ou superiores e, consequentemente, os programas que acessam e manipulam as informações armazenadas no banco de dados.
- Ex: 1) Inclui um novo atributo em uma tabela
- 2) Altera um relacionamento entre duas tabelas
Independência de Dados Física
É a capacidade que possui o esquema de ser alterado no nível interno e não ser necessário alterar os esquemas anteriores ou superiores e, consequentemente, os programas que acessam as informações armazenadas no banco de dados.
- Ex: Criar um novo índice
Arquivo Ideal:
- Acesso rápido
- Tamanho menor possível
- Atualização (inserção) de dados mais rápida
Sequencial
Todo e qualquer arquivo da organização sequencial possui o modo de acesso denominado sequencial. Tal fato significa que o primeiro registro a ser acessado é o primeiro registro cadastrado no arquivo, o segundo registro a ser acessado é o segundo registro a ser acessado no arquivo, o terceiro a ser acessado no arquivo é o terceiro registro cadastrado no arquivo, sucessivamente. Portanto, o acesso é em sequência, ou seja, na ordem em que foram armazenados ou cadastrados no arquivo.
A consequência desse modo de acesso sequencial é que para acessar o n-ésimo registro cadastrado ou armazenado na organização de arquivo sequencial é necessário acessar N - 1 registros anteriores.
Existem dois tipos da organização de arquivos sequencial:
- a) Não Ordenado
Quando se fala em ordenação de arquivo sequencial subentende-se que a ordenação é pelo identificador. No arquivo empregado a ordenação é pela matrícula, que é o atributo identificador no empregado.
- Vantagem: A inserção de um novo registro é rápida, pois é feita no final do arquivo.
- Desvantagem: Na organização de arquivo não ordenado, para afirmar que determinado registro não está cadastrado é necessária uma leitura total ou exaustiva do arquivo, o que significa que deverá haver uma leitura do primeiro ao último registro.
- b) Ordenado
Vantagem: Para afirmar que o registro não está cadastrado, não é necessária uma leitura exaustiva, pois tira-se proveito da ordenação dos registros pela matrícula.
Desvantagem: A inserção de um novo registro é lenta, tendo em vista que o arquivo está ordenado.
- 2 - Sequencial Indexado.
É um arquivo sequencial acrescido de um índice. Dessa forma, eu tenho dois modos de acesso nessa organização de arquivo denominada sequencial indexada. O primeiro modo de acesso é denominado sequencial, que é o acesso aos registros armazenados no arquivo de maneira sequencial, por isso o nome acesso sequencial. Este é dividido em páginas, e o arquivo sequencial é ordenado.
Todo índice é ordenado pelo atributo para o qual foi criado (pode haver mais de um atributo).
Vantagem:
- a) Possui um acesso mais rápido, pois faz uso do índice.
- b) O acesso sequencial é eficiente, pois tira-se proveito da ordenação sequencial do mesmo.
Desvantagem:
- a) Criação de uma área de extensão para conter os registros que não cabem na página e, dessa forma, manter a ordenação física do arquivo sequencial. Para acabar com a área de extensão é necessário reorganizar o arquivo. A reorganização do arquivo sequencial indexado retira todos os registros que se encontram na área de extensão, acabando com ela, e levando-os para o arquivo sequencial. Portanto, se um sistema deverá fazer muitas inserções de novos registros, não é aconselhável essa organização de arquivo, devido ao fato de criar rapidamente uma área de extensão e enchê-la também rapidamente.
- b) A área de extensão torna o acesso de registro mais lento.
- 3 - Indexado.
Essa organização de arquivo foi criada para não conter área de extensão e, dessa forma, é uma organização de arquivo que é indicada quando o sistema ou programa tem muitas inserções de novos registros. No entanto, não possui um acesso sequencial eficiente, pois o arquivo sequencial é não ordenado e, dessa forma, no modo de acesso sequencial é necessária uma leitura total ou exaustiva quando for desejado afirmar que um determinado registro não está cadastrado.
O índice dessa organização de arquivo possui um ponteiro para cada registro do arquivo de dados.
Vantagem:
- a) Índice rápido de acesso.
- b) Inserção de dados (registro) mais rápida.
Desvantagem:
- a) Acesso do modo sequencial não eficiente.