Baixe o app para aproveitar ainda mais
Prévia do material em texto
PROF. HENRIQUE LEITÃO E-mail: henriqueleitao@gmail.com ©Marcus Vinícius BANCO DE DADOS I Introdução aos Bancos de Dados 02 2/27Fundamentos de Banco de Dados BANCO DE DADOS Conceituação É uma coleção de dados inter-relacionados, representando informações sobre um domínio específico. O BD contém informações relevantes para uma empresa. Exemplos: lista telefônica, controle de acervo de uma biblioteca, sistema de controle dos recursos humanos de uma empresa. 3/27Fundamentos de Banco de Dados BANCO DE DADOS Sistema de Processamento de Arquivos No início os bancos de dados faziam uso de sistema de processamento de arquivos. O típico sistema de processamento de arquivos tem o suporte de um sistema operacional convencional. O sistema armazena os registros permanentes em vários arquivos e precisa de aplicativos diferentes para extrair e/ou adicionar registros aos arquivos adequados. 4/27Fundamentos de Banco de Dados SISTEMA DE PROCESSAMENTO DE ARQUIVOS Você acha que esta abordagem pode apresentar algum tipo de problema? 5/27Fundamentos de Banco de Dados SISTEMA DE PROCESSAMENTO DE ARQUIVOS Problemas Redundância e inconsistência nos dados; Dificuldade no acesso aos dados; Isolamento dos dados; Problemas de integridade; Problemas de atomicidade; Anomalias de acesso concorrente Problemas de segurança. O BD sumiu! E agora? 6/27Fundamentos de Banco de Dados SISTEMA DE GERENCIAMENTO DE BD Conceituação Um Sistema de Gerenciamento de Banco de Dados é uma coleção de dados inter-relacionados e um conjunto de programas para acessar esses dados. É um software com recursos específicos para facilitar a manipulação das informações dos bancos de dados e o desenvolvimento de programas aplicativos. 7/27Fundamentos de Banco de Dados SGBD É um sistema de manutenção de registros por computador, envolvendo quatro componentes principais: • Dados; • Hardware; • Software; • Usuários. O sistema de banco de dados pode ser considerado como uma sala eletrônica de arquivos. Existe uma série de métodos, técnicas e ferramentas que visam sistematizar o desenvolvimento de sistemas de bancos de dados. 8/27Fundamentos de Banco de Dados SGBD 9/27Fundamentos de Banco de Dados SGBD Objetivos: • abstração de dados – isolar o usuário de conhecimentos técnicos; • prover independência de dados às aplicações. Vantagens: • rapidez na manipulação e acesso à informação; • redução do esforço humano (desenvolvimento e utilização); • disponibilização da informação no tempo necessário; • controle integrado de informações distribuídas fisicamente; • redução de redundância e de inconsistências; • compartilhamento de dados; • aplicação automática de restrições de segurança; • redução de problemas de integridade. 10/27Fundamentos de Banco de Dados SGBD Níveis de Abstração Nível Físico Nível Conceitual Nível de Visões do Usuário 11/27Fundamentos de Banco de Dados SGBD Níveis de Abstração Nível Físico: nível mais baixo de abstração. Descreve como os dados estão realmente armazenados, englobando estruturas complexas de baixo nível. Nível Conceitual: descreve quais dados estão armazenados e seus relacionamentos. Neste nível, o banco de dados é descrito por meio de estruturas simples, que podem envolver estruturas complexas no nível físico. Nível de Visões do Usuário: descreve partes do banco de dados, de acordo com as necessidades de cada usuário, individualmente. 12/27Fundamentos de Banco de Dados SGBD Características Abstração de Dados: um SGBD permite uma representação conceitual dos dados evitando preocupação com detalhes de armazenamento de dados. Suporte à Múltiplas Visões de Dados: cada usuário acessa apenas o que lhe é dado direito a acessar. Controle de Redundância: sem repetição de dados não há inconsistências. Compartilhamento de Dados: acesso multiusuário com controle de concorrência garantido. 13/27Fundamentos de Banco de Dados SGBD Características Segurança Contra Acesso Indevido: diferentes visões asseguram confidencialidade. Múltiplas Interfaces: acesso via menu, linguagem natural, linguagem de consulta, linguagem de programação. Relacionamentos Complexos: uma entidade pode se relacionar com outras de forma binária, ternária, etc. Restrições de Integridade: armazenadas no BD “enxugam” os programas de aplicação. 14/27Fundamentos de Banco de Dados SGBD Características Independência Lógica de Dados: a capacidade de se modificar o esquema conceitual sem ter que modificar o esquema externo ou programas de aplicação. Exemplo: adição de uma coluna numa tabela no modelo conceitual não exige alteração dos programas. Independência Física de Dados: é a capacidade de se modificar o esquema interno sem ter que modificar os esquemas conceitual ou externo. Exemplo: a inclusão de um índice no esquema interno não exige alteração dos programas nem do esquema conceitual. Dados Separados de Programas: definição das estruturas de dados armazenada fora dos programas de aplicação e dentro do SGBD. 15/27Fundamentos de Banco de Dados COMPOSIÇÃO DOS BANCOS DE DADOS Dados – em um ou mais arquivos; Metadados – dicionário de dados; Software – SGBD (interface entre usuários e dados); Hardware – discos onde os dados são gravados; Usuários – DBA, desenvolvedores, analistas de sistemas, usuários. 16/27Fundamentos de Banco de Dados BANCO DE DADOS VS. LINGUAGENS • DDL – Linguagem de Definição de Dados (create, drop, alter, etc) • DML – Linguagem de Manipulação de Dados (insert, update, delete, select, etc) • DCL – Linguagem de Controle de Acesso aos Dados (grant, revoke, commit, rollback, etc) DML DDL DCL 17/27Fundamentos de Banco de Dados SISTEMA DE ARQUIVOS VS. SGBD O acesso/gerenciamento aos/dos dados é feito diretamente pelos programas aplicativos. O acesso/gerenciamento aos/dos dados é feito pelo SGBD. O SGBD funciona como uma interface entre o BD e os programas aplicativos. Dados (arquivos) Dados (arquivos) SGBD Sistema de arquivos Sistema de Banco de Dados Aplicativos Aplicativos Dados (arquivos) 18/27Fundamentos de Banco de Dados SISTEMA DE ARQUIVOS VS. SGBD Sistema de arquivos Sistema de Banco de Dados Dados Manipulados por vários usuários com uma única visão. Dados manipulados por vários usuários com visões diferentes. 19/27Fundamentos de Banco de Dados SISTEMA DE ARQUIVOS VS. SGBD Aplicação 1 Aplicação 2 Aplicação 3 BD Sistema de Arquivos 20/27Fundamentos de Banco de Dados SISTEMA DE ARQUIVOS VS. SGBD Setor de VENDAS Arquivos Programas de Aplicação Entrada de Dados e Relatórios Manipulação de Arquivos Definição de Arquivos Arquivos Programas de Aplicação Entrada de Dados e Relatórios Manipulação de Arquivos Definição de Arquivos Setor de CONTRATOS IMÓVEL ( Código, Rua, Cidade, CEP, Aluguel) ALUGUEL ( NumContrato, Imóvel, CPF_Cli, Valor, Duração, FormaPagto) CLIENTE ( CPF, Nome, Endereço, Fone) IMÓVEL ( Código, Rua, Cidade, CEP, Tipo, Quartos, Aluguel, CPF_Prop) PROPRIETARIO ( CPF, Nome, Endereço, Fone) CLIENTE ( CPF, Nome, Endereço, Fone, TipoEscolhido, AluguelMax) 21/27Fundamentos de Banco de Dados SISTEMA DE ARQUIVOS VS. SGBD IMÓVEL ( Código, Rua, Cidade, CEP, Tipo, Quartos, Aluguel, CPF_Prop) ALUGUEL ( NumContrato, Imóvel, CPF_Cli, Valor, Duração, FormaPagto) CLIENTE ( CPF, Nome, Endereço, Fone, TipoEscolhido, AluguelMax) PROPRIETARIO( CPF, Nome, Endereço, Fone) Setor de VENDAS Programas de Aplicação Entrada de Dados e Relatórios Programas de Aplicação Entrada de Dados e Relatórios Setor de CONTRATOS SGBD BD Dados e Metadados 22/27Fundamentos de Banco de Dados SENTA QUE LÁ VEM HISTÓRIA... Etapas da evolução rumo a tomada de decisão: Aplicações Isoladas: dados duplicados, dados inconsistentes, processos duplicados. Sistemas Integrados: racionalização de processos, manutenção dos dados. Sistemas de Informação: racionalização de processos, racionalização de dados. 23/27Fundamentos de Banco de Dados SENTA QUE LÁ VEM HISTÓRIA... O desenvolvimento da teoria de Banco de Dados ajudou sobretudo na independência de dados, ou seja, qualquer mudança na estrutura física ou na estratégia de acesso não implica em alteração nos aplicativos que utilizam tal dado. 24/27Fundamentos de Banco de Dados SENTA QUE LÁ VEM HISTÓRIA... 1950 – 1960: Fitas magnéticas usadas para armazenamento de dados. Atualizações: lia de uma fita e escrevia as modificações em uma nova fita. 1960 – 1970: Início do uso dos discos rígidos. Início dos bancos de dados relacionais. Década de 80: Início dos bancos de dados comerciais: IBM, DB2, Oracle, Ingres, entre outros. Início dos bancos de dados OO, paralelos e distribuídos. 25/27Fundamentos de Banco de Dados SENTA QUE LÁ VEM HISTÓRIA... Início década de 90: Linguagem SQL. Início dos bancos de dados de apoio à decisão. Final da década de 90: Crescimento da WWW. Adaptação dos BDs à Web. Disponibilidade 7 dias por semana, 24 horas por dia. Início de 2000: Surgimento da XML. E hoje em dia? 26/27Fundamentos de Banco de Dados ALGUNS DESAFIOS DA COMPUTAÇÃO BRASIL 1. Gestão da Informação em grandes volumes de dados multimídia distribuídos Business Intelligence (Sistemas analíticos e de predição, Big Data, NoSQL); Sistemas de sistemas; Redes neurais; Mineração de dados; Processos intensivos; Fusão de dados; Programação paralela; Integração de sistemas, dados (desestruturados e heterogêneos) e informações; Interoperabilidade semântica (ontologias); Recuperação de Informações; Busca semântica; Multilinguismo; Redes Sociais. 27/27Fundamentos de Banco de Dados
Compartilhar