Aula 01 - Fundamentos de Dados e Sistemas de Informação
Material organizado para estudo progressivo, com leitura confortável, recursos complementares e navegação para a próxima etapa da disciplina.
Resumo
Dado é o fato bruto sem contexto — um número, uma letra, um valor isolado. Quando esse dado é processado, organizado e colocado em contexto, ele se torna informação, que por sua vez, acumulada com experiência e padrões, gera conhecimento. Bancos de dados existem exatamente para armazenar dados de forma estruturada e permitir que sistemas os transformem em informação útil para tomada de decisão. Um Sistema Gerenciador de Banco de Dados (SGBD) é o software intermediário que faz essa ponte entre a aplicação e os dados físicos, garantindo quatro propriedades fundamentais — atomicidade, consistência, isolamento e durabilidade (ACID) — além de controle de acesso, concorrência e recuperação a falhas. Antes dos bancos de dados, organizações armazenavam informações em arquivos separados, o que gerava redundância, inconsistências, impossibilidade de acesso simultâneo e ausência de integridade referencial. O modelo relacional, criado por Edgar Codd em 1970, resolveu esses problemas organizando dados em tabelas bidimensionais conectadas por chaves primárias e estrangeiras, permitindo relacionamentos entre entidades sem duplicação de dados. Sobre esse modelo, construímos a modelagem conceitual — usando o Diagrama Entidade-Relacionamento para representar entidades, atributos e relacionamentos de forma independente de tecnologia — e o processo de normalização nas formas 1FN, 2FN e 3FN, que elimina redundâncias, dependências parciais e transitivas, resultando em um esquema limpo e consistente que pode então ser convertido em tabelas SQL reais com seus tipos de dados, constraints e relacionamentos implementados no MySQL.
Modelagem Conceitual de Banco de Dados18/04/2026Aula interativa importada
Leitura pensada para estudo, consulta e revisão. Use a navegação lateral para alternar entre etapas da aula.
Estudo
Conteúdo interativo — HTML importado
Aula 01 - Fundamentos de Dados e Sistemas de Informação
Abra o material em tela cheia para estudar com conforto, sem sair da disciplina.
Aula 01 - Fundamentos de Dados e Sistemas de Informação
100%
Carregando conteúdo interativo...
Módulo 1 — Fundamentos de Dados e Sistemas de Informação ◀ ▶ 1 / 0 ⛶ Tela cheia M1 ◆ Modelagem Conceitual de BD e UML Engenharia da Computação · 5º Período · 90h Módulo 1 Fundamentos de Dados e Sistemas de Informação Antes de modelar, precisamos entender o que modelamos. Este módulo cobre os fundamentos que sustentam toda a disciplina: dado, informação, sistemas e SGBDs. 10 horas 6 tópicos Fundamentos Módulo 1 / 10 01 01 · Dado, Informação e Conhecimento A pirâmide do conhecimento 🧩 Sabedoria (Wisdom) Aplicação do conhecimento com julgamento e ética 🧠 Conhecimento (Knowledge) Informação contextualizada com experiência e padrões 💡 Informação (Information) Dado processado, organizado e com significado 🔢 Dado (Data) Fato bruto, símbolo sem contexto 📌 Hierarquia DIKW O modelo DIKW (Data → Information → Knowledge → Wisdom) é o pilar conceitual de toda área de sistemas de informação. Os bancos de dados existem para armazenar dados e permitir que sistemas os transformem em informação útil. Exemplo real: Sistema hospitalar Dado "36.8" · "97" · "120/80" · "true" Temperatura, SpO₂, pressão, internado — valores brutos ↓ Informação Paciente João, 45 anos, internado há 2 dias com febre de 36.8°C, SpO₂ 97%, PA 120/80 mmHg ↓ Conhecimento Padrão de sinais vitais dentro do normal para pós-operatório. Alta provável em 24h se evolução mantida. ↓ Sabedoria Médico decide por alta com acompanhamento ambulatorial, evitando internação desnecessária que gera custo e risco. 02 01 · Dado, Informação e Conhecimento Quiz — Dado ou Informação? 🎮 Atividade interativa Clique na resposta que você considera correta para cada item. Este exercício ajuda a fixar a distinção fundamental entre dado e informação antes de avançar. 1. "R$ 4.250,00" A Informação — é um valor monetário concreto B Dado — número sem contexto: salário? preço? dívida? 💡 Correto! "R$ 4.250,00" é apenas um número. Sem saber se é salário, preço de produto, saldo devedor ou orçamento, não há como usá-lo para tomar decisão. 2. "Vendas de smartphones cresceram 12% no 1º tri de 2024 no Brasil" A Informação — dado processado com contexto e significado B Dado — é só uma porcentagem 💡 Correto! Temos: o quê (smartphones), quanto (12%), quando (1º tri/2024), onde (Brasil). Isso é informação — útil para decisão empresarial. 3. "true" (campo booleano no banco) A Dado — sem saber o que esse campo representa, é inútil B Informação — indica que algo é verdadeiro 💡 Correto! "true" pode ser "ativo", "pago", "premium", "aprovado"… Isolado, não diz nada. O contexto (nome do campo + tabela) o transformaria em informação. 4. "Usuário carlos@email.com realizou login às 23:47 de IP 187.x.x.x — 4ª tentativa falhada" A Dado — são apenas registros de log B Informação — e potencialmente indica ataque de força bruta 💡 Correto! Temos contexto completo: quem, quando, de onde, quantas tentativas. Isso é informação de segurança acionável — gera alerta ou bloqueio automático. 03 02 · Sistemas de Informação O que são Sistemas de Informação? ⚙️ Definição Um Sistema de Informação (SI) é um conjunto de componentes inter-relacionados que coletam, processam, armazenam e distribuem informações para apoiar a tomada de decisão e o controle de uma organização. O ciclo de um SI 📥 Entrada Dados coletados do mundo real → ⚙️ Processamento Cálculo, classificação, ordenação → 🗄️ Armazenamento Banco de Dados → 📤 Saída Relatórios, dashboards, APIs 💡 Onde o BD se encaixa O banco de dados é o componente de armazenamento do SI. Sem ele, os dados seriam perdidos a cada reinicialização. Modelar bem o BD é garantir que o SI inteiro funcione de forma confiável. Tipos de Sistemas de Informação TPS — Transaction Processing Operacional Processa transações do dia a dia: vendas, pagamentos, reservas. Ex: caixa de supermercado, ATM bancário. MIS — Management Information Gerencial Gera relatórios gerenciais periódicos. Ex: relatório mensal de vendas por região, controle de estoque. DSS — Decision Support Estratégico Analisa dados para apoiar decisões complexas. Ex: previsão de demanda, análise de risco de crédito. EIS / BI — Business Intelligence Executivo Dashboards e KPIs para alta gestão. Ex: Power BI, Tableau, Google Looker. 04 03 · Importância dos Bancos de Dados Por que BDs são indispensáveis? 🌍 Escala do problema O mundo gera 2,5 quintilhões de bytes de dados por dia. 90% de todos os dados do mundo foram gerados nos últimos dois anos. Sem bancos de dados, nenhum sistema moderno existiria. 🎬 Netflix 🚗 Uber 💸 Pix 🏥 Hospital 📝 ENEM Netflix — 260 milhões de usuários 🎬 Catálogo 15.000+ títulos com metadados: título, gênero, elenco, sinopse, duração, idiomas, legendas 👤 Perfis e histórico Cada usuário tem histórico de visualização, avaliações, lista de favoritos e posição de pausa 🤖 Recomendação O algoritmo consulta o BD para personalizar os 80% de conteúdos que são assistidos via recomendação ⚡ Desafio técnico A Netflix processa mais de 500 mil consultas por segundo no horário de pico. A latência máxima tolerada é de 10ms. Qualquer falha no BD derruba o serviço para milhões de usuários simultaneamente. 💡 Stack real Netflix usa MySQL (dados transacionais), Cassandra (histórico e eventos), e Apache Kafka para streaming de eventos — tudo modelado com atenção extrema ao esquema de dados. Uber — 5 milhões de viagens/dia 📍 Geolocalização em tempo real Posição de cada motorista atualizada a cada 5 segundos → bilhões de inserções de dados por dia 🔗 Matching passageiro-motorista Consulta simultânea de disponibilidade, distância e avaliação em tempo sub-segundo 💳 Pagamento e histórico Toda corrida armazenada: rota, tempo, valor, motorista, passageiro, método de pagamento 🔥 Falha real — 2017 Uma falha no banco de dados do Uber deixou o serviço indisponível por horas em várias cidades. Impacto estimado: milhões de dólares em receita perdida e dano à reputação — todo esse prejuízo por falta de modelagem adequada para alta disponibilidade. Pix — 4 bilhões de transações/mês ⚡ Liquidação em 10 segundos Cada transação exige leitura e escrita em múltiplos bancos (remetente + destinatário + Banco Central) com garantia ACID 🔑 Chaves Pix CPF, CNPJ, email, celular, chave aleatória — tudo persistido no DICT (Diretório de Identificadores) 🛡️ Antifraude Histórico de transações analisado em tempo real para detectar padrões suspeitos 🏦 Contexto técnico O sistema Pix do Banco Central processa picos de 2.000 TPS (transações por segundo). A modelagem do banco de dados foi crucial para garantir disponibilidade 24x7x365 e tolerância a falhas. Prontuário Eletrônico — vida ou morte 🩺 Histórico médico completo Alergias, medicamentos, cirurgias anteriores, exames — dados que podem salvar ou custar uma vida 💊 Prescrição eletrônica Verificação automática de interações medicamentosas consultando o banco de dados de medicamentos 📊 Epidemiologia Dados agregados permitem identificar surtos, padrões de doenças e direcionar campanhas de saúde ⚠️ Caso real — Ransomware hospitalar Em 2021, o ataque ao sistema do Hospital de Düsseldorf (Alemanha) derrubou os bancos de dados, forçou redirecionamento de pacientes emergenciais. Uma paciente morreu no trajeto. Dados desorganizados ou inacessíveis têm consequências fatais. ENEM — 3,9 milhões de inscritos (2023) 📝 Inscrições e cadastros Dados pessoais, socioeconômicos, deficiências, local de prova — tudo em BD escalável 🔢 Gabarito e TRI Cálculo da nota por Teoria de Resposta ao Item — consulta cruzada entre respostas e parâmetros dos itens 🎓 SISU / ProUni Algoritmo de alocação de vagas consulta notas, vagas disponíveis, cotas — tudo em BD relacional 💡 Pico de acesso No dia de divulgação do gabarito e da nota, o INEP registra picos de 200.000 acessos simultâneos ao sistema. Uma modelagem inadequada do banco resultaria em indisponibilidade para milhões de candidatos. 05 04 · Arquivos Tradicionais vs Banco de Dados Arquivos vs Banco de Dados 🏫 Cenário: sistema acadêmico dos anos 90 Uma universidade gerenciava dados de alunos em arquivos .txt e .csv separados por departamento: o departamento de TI tinha alunos_ti.csv, RH tinha alunos_rh.csv. Cada sistema lia e escrevia nesses arquivos diretamente. Veja o que acontecia… ❌ ARQUIVOS TRADICIONAIS Redundância de dados O nome "Ana Lima" aparece em 5 arquivos diferentes. Ela muda o nome → 5 atualizações manuais → erro garantido. Inconsistência Arquivo do RH diz CPF 123.456; arquivo da Biblioteca diz CPF 123.457. Qual está correto? Acesso concorrente impossível Se dois processos tentam gravar no mesmo arquivo simultaneamente → corrupção de dados. Sem segurança por entidade Para o funcionário ver sua nota, ele tem acesso ao arquivo inteiro com as notas de todos. Sem integridade referencial Posso inserir uma matrícula apontando para um curso que não existe — ninguém impede. ✅ BANCO DE DADOS Dado único e centralizado Cada dado existe em um só lugar. Atualizar Ana Lima muda em todo o sistema instantaneamente. Consistência garantida (ACID) Transações atômicas: ou tudo é salvo, ou nada é. Nunca um estado parcial corrompido. Controle de concorrência O SGBD gerencia milhares de acessos simultâneos com locks e isolation levels. Segurança granular Permissões por usuário, por tabela, por coluna. O aluno vê só sua nota. Integridade referencial FK impossibilita registros órfãos. Não existe matrícula em curso inexistente. ⚡ ACID — a garantia do BD relacional Atomicity · Consistency · Isolation · Durability. Estudaremos cada um deles ao longo do curso. 06 05 · SGBD — Sistemas Gerenciadores Arquitetura do SGBD ⚙️ O que é um SGBD Software que atua como intermediário entre usuários/aplicações e os dados físicos. Fornece uma abstração que permite manipular dados de forma padronizada, segura e eficiente — independente de como estão armazenados em disco. 👩💻 Nível Externo (Visões) Cada usuário vê apenas os dados relevantes para ele ↕ 🧩 Nível Conceitual (Lógico) Esquema completo do banco: tabelas, relacionamentos, regras ↕ ⚙️ Nível Interno (Físico) Como dados são armazenados em disco: índices, blocos, ponteiros ↕ 💾 Armazenamento Físico Arquivos no sistema operacional, SSD, HDD, NVMe 🔑 Independência de dados Você pode mudar como os dados são armazenados fisicamente (trocar SSD por NVMe) sem alterar o código da aplicação. Isso é independência física. Você pode reestruturar tabelas sem quebrar os programas que as usam. Isso é independência lógica. Componentes internos do SGBD 1 Query Parser & Optimizer Recebe o SQL, verifica sintaxe e semântica, e escolhe o plano de execução mais eficiente. O optimizer pode transformar uma query ruim em outra mais rápida. 2 Transaction Manager Garante as propriedades ACID. Controla o commit e rollback de transações, garantindo que operações incompletas não corrompam o banco. 3 Lock Manager Coordena o acesso concorrente com bloqueios (locks). Impede que duas transações modifiquem o mesmo dado simultaneamente, evitando race conditions. 4 Buffer Manager Gerencia o cache em memória RAM dos dados mais acessados, reduzindo leituras de disco. Fundamental para performance. 5 Recovery Manager Usa o Write-Ahead Log (WAL) para recuperar o banco após falhas. Garante que dados commitados nunca se percam. 07 05 · SGBD — Sistemas Gerenciadores SGBDs no mercado Relacionais (SQL) — foco deste curso MySQL / MariaDB ✓ Nosso lab Open-source. Usado no WordPress, Airbnb, Twitter. MySQL 8.x com suporte a JSON, CTEs e window functions. PostgreSQL Open-source mais avançado. Suporte nativo a JSON, arrays, tipos geométricos. Preferido em data science e sistemas críticos. Usado pela NASA, Instagram, Reddit. SQL Server Microsoft. Integração nativa com .NET e Azure. Dominante em empresas brasileiras com stack Windows. SAP BR, Ambev, Bradesco. Oracle DB Pago. Enterprise. Alta disponibilidade e features avançadas. Usado em bancos, governo federal, multinacionais. Caro, mas maduro. Não-Relacionais (NoSQL) — para contexto MongoDB Documentos JSON — catálogos, logs, conteúdo dinâmico Redis Chave-valor em memória — cache, sessões, filas em tempo real Cassandra Wide-column — IoT, séries temporais, análise de eventos Neo4j Grafos — redes sociais, detecção de fraude, recomendação Relacional vs NoSQL — quando usar cada um Critério SQL NoSQL Estrutura dos dados Bem definida Variável/flexível Consistência Forte (ACID) Eventual (BASE) Escalabilidade Vertical Horizontal Consultas complexas JOINs e SQL Limitadas Transações Nativas Limitadas 08 06 · Exemplos de Aplicações Reais BD na Engenharia da Computação 🎓 Por que isso importa para você Como engenheiro de computação, você vai projetar, implementar e manter sistemas que dependem de bancos de dados. Esses são cenários que você encontrará na carreira — e onde uma modelagem ruim pode custar caro. 🌐 Sistemas Web e APIs Todo back-end REST conecta a um BD. Um endpoint GET /users/:id executa um SELECT. Um POST executa um INSERT. Tecnologias Node.js + MySQL Django + PostgreSQL Spring + Oracle 📡 IoT e Sistemas Embarcados Sensores enviam leituras para BDs time-series. Uma planta industrial pode gerar 10.000 leituras/segundo que precisam ser armazenadas e consultadas. Tecnologias InfluxDB TimescaleDB SQLite (edge) 🤖 Machine Learning Modelos de ML precisam de dados de treino. Um BD bem modelado é a fonte de features. ETL busca dados do BD relacional para o pipeline de ML. Tecnologias PostgreSQL + Python BigQuery Snowflake 🔐 Segurança e Cibersegurança SIEM (Security Information and Event Management) armazena e correlaciona logs de segurança em BDs. SQL injection é o ataque #1 em aplicações web — vem de BD mal protegido. Relevância SQL Injection está no OWASP Top 10 há 20 anos consecutivos 🧬 Bioinformática O genoma humano tem ~3 bilhões de pares de bases. BDs especializados como GenBank armazenam sequências genômicas de milhões de organismos, consultáveis por SQL. Tecnologias PostgreSQL + BioSQL MySQL Workbench 🚀 Sistemas Embarcados Críticos Sistemas de controle de tráfego aéreo, usinas, siderúrgicas e satélites usam BDs em tempo real. Falha = desastre. A modelagem deve ser exaustiva. Exemplos Sistema DECEA (controle aéreo), SCADA de usinas, monitoramento de satélites 09 07 · Exercícios Exercícios Práticos 🎯 Instrução Exercícios conceituais e analíticos — fundamentais antes de avançar para a modelagem. Reflita e responda antes de ver a solução. 01 Cite dois problemas que surgem quando uma empresa armazena dados de clientes em planilhas Excel separadas por departamento. Como um SGBD resolve cada um? CONCEITUAL ▼ 💡 Pense: o que acontece quando o mesmo cliente existe em dois arquivos com informações diferentes? E se dois funcionários abrem o arquivo ao mesmo tempo? Problema 1 — Redundância e inconsistência O mesmo cliente aparece em comercial.xlsx e suporte.xlsx com endereços diferentes. O SGBD resolve centralizando o dado em uma única tabela cliente: cada sistema acessa a mesma fonte com uma chave primária. Problema 2 — Acesso concorrente Dois vendedores abrem o mesmo arquivo e salvam ao mesmo tempo → o último salva ganha, o anterior se perde. O SGBD resolve com locking e controle de transações (ACID), garantindo que cada escrita seja atômica e isolada. 💡 Ver dica 02 Classifique cada sistema abaixo como TPS, MIS, DSS ou BI: (a) Caixa eletrônico do banco — (b) Relatório semanal de faltas de alunos — (c) Dashboard de KPIs de um CEO — (d) Sistema de recomendação de crédito. CLASSIFICAÇÃO ▼ 💡 TPS = transações operacionais do dia a dia. MIS = relatórios periódicos para gerentes. DSS = análise para decisões complexas. BI = visão executiva de alto nível. (a) Caixa eletrônico → TPS Processa transações (saques, depósitos) em tempo real (b) Relatório de faltas → MIS Relatório gerencial periódico para coordenação pedagógica (c) Dashboard de KPIs → BI Visão consolidada de métricas estratégicas para alta gestão (d) Recomendação de crédito → DSS Analisa dados históricos para apoiar decisão de concessão 💡 Ver dica 03 O que significa dizer que um SGBD garante "independência de dados"? Dê um exemplo prático de por que isso é vantajoso para um engenheiro de software. ANÁLISE ▼ 💡 Pense: o que acontece com o código de uma aplicação quando o DBA muda um índice ou particionamento de tabela? Independência Física O DBA pode mover o banco de um HD para um SSD NVMe, criar particionamentos, adicionar índices compostos — sem que nenhuma linha do código da aplicação precise ser alterada. A aplicação continua executando SELECT * FROM pedido WHERE id = 1 exatamente da mesma forma. Independência Lógica Um DBA pode adicionar novas colunas à tabela cliente (como data_nascimento) sem quebrar os programas que já fazem SELECT nome, email FROM cliente. A visão dos programas antigos se mantém intacta. ✅ Isso é essencial para manutenção evolutiva de sistemas: o BD pode crescer e ser otimizado sem reescrever aplicações que dependem dele. 💡 Ver dica ★ Desafio: Você foi contratado para modernizar o sistema de uma clínica veterinária que usa planilhas. Identifique pelo menos 5 entidades de dados e 2 problemas concretos que o sistema atual deve ter. PROJETO ▼ 💡 Entidade = "coisa" sobre a qual guardamos informação. Pense: Animal, Tutor, Veterinário, Consulta, Medicamento, Vacina, Estoque… Entidades identificadas Animal — espécie, raça, idade, peso Tutor — nome, CPF, contato, endereço Veterinário — CRMV, especialidade Consulta — data, diagnóstico, prescrição Medicamento — princípio ativo, dosagem, estoque Vacina — tipo, data aplicação, validade Problemas concretos nas planilhas O mesmo animal aparece em "Consultas_2023.xlsx" e "Vacinação.xlsx" com nomes diferentes — "Rex" vs "Rex Lima" — impossível cruzar dados Sem histórico médico completo centralizado, o veterinário de plantão não sabe de alergias a medicamentos do animal atendido na urgência Estoque de medicamentos em planilha separada → recepcionista confirma remédio disponível, médico vai buscar: está zerado 💡 Ver dica 10 FIM · Resumo do Módulo 1 Resumo do Módulo 1 01 Dado = fato bruto sem contexto. Informação = dado processado com significado. Conhecimento = informação + experiência + padrões (hierarquia DIKW). 02 Sistemas de Informação coletam, processam, armazenam e distribuem dados. Tipos: TPS (operacional), MIS (gerencial), DSS (decisão), BI (executivo). 03 Bancos de dados são indispensáveis para sistemas modernos: Netflix, Pix, ENEM, Uber — todos dependem de BDs bem modelados para funcionar. 04 Arquivos tradicionais geram redundância, inconsistência e problemas de concorrência. BDs resolvem com dado centralizado, ACID e controle de acesso granular. 05 O SGBD tem 3 camadas: Externo (visões), Conceitual (esquema) e Interno (físico). Garante independência de dados física e lógica. 06 Componentes internos: Query Optimizer, Transaction Manager, Lock Manager, Buffer Manager e Recovery Manager. Cada um garante uma propriedade do ACID. Próximo módulo Módulo 2 — Abstração e Níveis de Modelagem Modelagem conceitual, lógica e física. Independência de dados. Visão geral do processo de modelagem.