Banco de Dados - 2º Ano Técnico
Olá, alunos do 2º ano! Como seu professor, preparei este resumo técnico detalhado de todo o conteúdo que abordamos neste primeiro trimestre na disciplina de Banco de Dados. Este material servirá como um guia para consolidar os conceitos fundamentais, desde a teoria dos SGBDs até o planejamento de projetos.
Aqui estão os tópicos essenciais da nossa jornada:
1. Objetivos e Vantagens de um SGBD
A transição do processamento de arquivos tradicionais para os modernos Sistemas Gerenciadores de Banco de Dados (SGBD) permitiu lidar com volumes massivos de informação de forma estruturada.
- Controle de Redundância: Diferente dos sistemas de arquivos, onde os dados ficavam isolados em "silos", o SGBD utiliza um repositório único, evitando inconsistências e desperdício de espaço.
- Segurança e Acesso: Permite definir permissões granulares de acesso, o que é vital para a conformidade com a LGPD.
- Concorrência e Recuperação: O sistema gerencia múltiplos acessos simultâneos (ex: compra de passagens aéreas) através de protocolos de isolamento e oferece mecanismos de backup e logs para restauração em caso de falhas.
2. Arquitetura de Sistemas de Banco de Dados
A arquitetura define como os componentes interagem entre si e com os usuários.
- Modelos de Camadas: Evoluímos do modelo centralizado para o Cliente-Servidor. Na arquitetura de duas camadas (2-tier), o cliente fala direto com o banco; na de três camadas (3-tier), existe uma camada intermediária de aplicação que processa as regras de negócio.
- Componentes Internos: O Gerenciador de Armazenamento lida com o disco físico, enquanto o Processador de Consultas interpreta comandos SQL para otimizar buscas.
- Dicionário de Dados (Catálogo): É o "cérebro" do sistema, armazenando os metadados (nomes de tabelas, tipos de colunas e restrições).
3. Níveis de Abstração de Dados
Para simplificar o uso do sistema, os SGBDs utilizam a abstração em três níveis (Modelo ANSI/SPARC):
- Nível Físico (Interno): Descreve como os dados estão realmente gravados no hardware (arquivos, índices, hash).
- Nível Lógico (Conceitual): Descreve o que é armazenado através de entidades, atributos e relacionamentos (tabelas como "Clientes").
- Nível de Visão (Externo): Cria janelas personalizadas para cada tipo de usuário, ocultando dados irrelevantes ou sensíveis por simplicidade e segurança.
4. Independência de Dados
É a capacidade de alterar um nível do sistema sem afetar o nível superior.
- Independência Física: Permite trocar o hardware ou técnicas de indexação sem que o programador precise mudar o código SQL.
- Independência Lógica: Permite alterar o esquema lógico (como adicionar uma coluna) sem que as visões dos usuários ou os aplicativos quebrem.
- Mapeamento: O SGBD usa mapeamentos que funcionam como "tradutores" entre esses esquemas, garantindo a harmonia do sistema.
5. Modelos de Dados Clássicos
Antes do domínio do modelo relacional, dois modelos foram fundamentais:
- Modelo Hierárquico: Organizado como uma árvore invertida (pai e filho). Um filho tem apenas um pai. É veloz para acessos previsíveis, mas rígido e propenso a redundâncias.
- Modelo em Rede: Utiliza a topologia de grafos, permitindo que um "filho" (membro) tenha vários "pais" (proprietários). É mais flexível que o hierárquico, mas extremamente complexo de gerenciar via ponteiros físicos.
6. O Modelo Relacional
Proposto por Edgar F. Codd em 1970, é o padrão atual do mercado.
- Estrutura: Organiza dados em relações (tabelas), compostas por tuplas (linhas) e atributos (colunas).
- Chaves: A Chave Primária (PK) identifica um registro único; a Chave Estrangeira (FK) estabelece vínculos entre tabelas, garantindo a integridade referencial.
- Acesso por Conteúdo: Diferente dos modelos clássicos, no relacional acessamos o dado pelo que ele é, e não por sua localização física, usando linguagens de alto nível como o SQL.
7. Fases de um Projeto de Banco de Dados
Projetar um banco exige uma metodologia rigorosa:
- Levantamento de Requisitos: Entender as necessidades do usuário e as regras de negócio.
- Modelagem Conceitual: Criar o MER (Modelo Entidade-Relacionamento), uma visão abstrata de alto nível.
- Projeto Lógico: Converter o MER para o modelo relacional, definindo tabelas e colunas, e aplicando a Normalização para eliminar redundâncias.
- Projeto Físico: Implementação real no SGBD, definindo tipos de dados específicos e estratégias de indexação para performance.
Estudem esses tópicos com dedicação, pois eles são o alicerce para qualquer profissional de TI que deseja criar sistemas escaláveis e seguros!
Comentários
Postar um comentário