📚 Tópico 1 - Conceitos Fundamentais de Banco de Dados

🎯 Objetivos de Aprendizagem
  • Compreender os conceitos fundamentais de banco de dados
  • Identificar as diferenças entre dados, informação e conhecimento
  • Entender a evolução histórica dos sistemas de gerenciamento de dados
  • Reconhecer os componentes de um sistema de banco de dados
  • Analisar as vantagens e desvantagens dos bancos de dados
🗄️ 1. O que é um Banco de Dados?

Segundo Elmasri & Navathe (2017), um banco de dados é uma coleção de dados relacionados que representa algum aspecto do mundo real. É projetado, construído e populado com dados para um propósito específico.

Definição Acadêmica

"Um banco de dados é uma coleção persistente de dados relacionados, modelados e organizados de acordo com um esquema conceitual" - Silberschatz, Galvin & Gagne (2018)

Características Essenciais:
  • Persistência: Dados permanecem após o fim do programa
  • Organização: Estrutura lógica e física
  • Compartilhamento: Múltiplos usuários simultâneos
  • Integridade: Consistência dos dados
  • Segurança: Controle de acesso
  • Eficiência: Recuperação rápida
📈 2. Evolução Histórica dos Sistemas de Dados
Década de 1960 - Sistemas de Arquivos

Armazenamento em arquivos separados, sem relacionamento entre eles. Problemas de redundância e inconsistência.

Referência: Date (2003) - "An Introduction to Database Systems"
1970 - Modelo Relacional (Codd)

Revolução com o trabalho de E.F. Codd na IBM, estabelecendo os fundamentos matemáticos do modelo relacional.

Referência: Codd (1970) - "A Relational Model of Data for Large Shared Data Banks"
1980-1990 - SGBDs Comerciais

Desenvolvimento de SGBDs como Oracle, DB2, SQL Server, com linguagem SQL padronizada.

Referência: Connolly & Begg (2015) - "Database Systems: A Practical Approach"
2000+ - Era Moderna

Bancos NoSQL, Big Data, Data Warehouses, Data Lakes e tecnologias em nuvem.

Referência: Silberschatz, Galvin & Gagne (2018) - "Operating System Concepts"
🔧 3. Componentes de um Sistema de Banco de Dados
🏗️ Arquitetura de Três Níveis (ANSI/SPARC)

Proposta por ANSI/SPARC (1975) e desenvolvida por Date (2003):

  • Nível Externo: Visões dos usuários
  • Nível Conceitual: Esquema lógico global
  • Nível Interno: Esquema físico
👥 Participantes no Sistema

Segundo Elmasri & Navathe (2017):

  • Administradores (DBA): Gerenciamento
  • Projetistas: Estrutura e modelagem
  • Desenvolvedores: Aplicações
  • Usuários Finais: Consultas e operações
🔄 Processo de Desenvolvimento
Análise
Requisitos
Projeto
Modelagem
Implementação
Desenvolvimento
Manutenção
Operação
⚖️ 4. Vantagens e Desvantagens dos Bancos de Dados
✅ Vantagens
  • Redução de Redundância: Dados únicos
  • Consistência: Integridade referencial
  • Compartilhamento: Múltiplos usuários
  • Segurança: Controle de acesso
  • Backup e Recuperação: Proteção dos dados
  • Padronização: Linguagem SQL
❌ Desvantagens
  • Custo: Software e hardware
  • Complexidade: Curva de aprendizado
  • Dependência: Sistema centralizado
  • Performance: Possíveis gargalos
  • Manutenção: Especialistas necessários
  • Migração: Dificuldade de mudança
🏷️ 5. Classificação dos Bancos de Dados
📊 Por Modelo de Dados
  • Relacional: Tabelas e relacionamentos
  • Orientado a Objetos: Classes e objetos
  • NoSQL: Documentos, grafos, chave-valor
  • Hierárquico: Estrutura em árvore
  • Rede: Grafos complexos
👥 Por Número de Usuários
  • Pessoal: Um usuário
  • Departamental: Grupo pequeno
  • Empresarial: Organização inteira
  • Distribuído: Múltiplas localizações
💻 Por Aplicação
  • Operacional: Transações diárias
  • Data Warehouse: Análise e BI
  • Data Lake: Big Data
  • OLTP: Processamento transacional
  • OLAP: Processamento analítico
🧪 Exercícios Práticos
📝 Exercício 1: Identificação de Componentes

Analise um sistema de banco de dados de uma biblioteca e identifique:

  • Quais são os dados armazenados?
  • Quem são os usuários do sistema?
  • Quais operações são realizadas?
  • Como os dados se relacionam?
🎯 Exercício 2: Análise Comparativa

Compare um sistema de arquivos tradicional com um banco de dados:

  • Vantagens e desvantagens de cada abordagem
  • Cenários onde cada um é mais adequado
  • Custos envolvidos em cada solução
📚 Referências Bibliográficas
📖 Livros Fundamentais:
  • ELMASRI, R.; NAVATHE, S. Sistemas de Banco de Dados. 6ª ed. São Paulo: Pearson, 2017.
  • DATE, C. J. An Introduction to Database Systems. 8ª ed. Boston: Addison-Wesley, 2003.
  • SILBERSCHATZ, A.; GALVIN, P. B.; GAGNE, G. Operating System Concepts. 10ª ed. Hoboken: Wiley, 2018.
  • CONNOLLY, T.; BEGG, C. Database Systems: A Practical Approach to Design, Implementation, and Management. 6ª ed. Boston: Pearson, 2015.
📄 Artigos Científicos:
  • CODD, E. F. A Relational Model of Data for Large Shared Data Banks. Communications of the ACM, v. 13, n. 6, p. 377-387, 1970.
  • ANSI/SPARC. Study Group on Data Base Management Systems. ACM SIGMOD Record, v. 5, n. 2, 1975.
  • CHEN, P. P. The Entity-Relationship Model: Toward a Unified View of Data. ACM Transactions on Database Systems, v. 1, n. 1, p. 9-36, 1976.