BANCO DE DADOS I (1º BIMESTRE) [email protected] [email protected] (CLÁUDIA VICCI AMADEU) SISTEMAS DE BANCO DE DADOS (recomendado) ELMASRI, RAMEZ Básica Livro SISTEMA DE BANCO DE DADOS KORTH, HENRY F. / SILBERSCHATZ, ABRAHAM / SUDARSHAN, S. Básica Livro INTRODUÇÃO A SISTEMAS DE BANCOS DE DADOS DATE, C. J. Complementar Livro BANCO DE DADOS: FUNDAMENTOS, PROJETOS E IMPLEMENTAÇÃO KROENKE, DAVID M. Complementar Livro Prova bimestral : Exercício trabalho: 8,0 2,0 INTRODUÇÃO. (22/02/10) Banco de dados (base de dados) é uma coleção de dados relacionados, organizados e armazenados de forma a possibilitar fácil manipulação, incluindo alterações, inserções, remoções e consultas. Exs: dados de uma instituição financeira, dados para controle de uma universidade, dados de controle sobre o estoque de uma empresa, dados sobre o genes humanos (projeto genoma), dado sobre a meteorologia, entre outros. A manipulação desses dados armazenados é feita por um conjunto de programas computadorizados denominados sistema de gerenciador de banco de dados (SGBD). Um SGBD tem uma séries de funções pré-implementados que gerenciam as operações de inserção, remoção, atualização e consulta de dados armazenados. Os SBGDs e os Bancos de Dados juntos formam um ambiente denominado sistema de banco de dados (SBD). Um SBD pode oferecer: Rapidez: consultas on-line para informação Disponibilidade total: Todas as informações contidas na base esta disponível o tempo todo. Flexibilidade: questões não tratadas tornam-se tratáveis (facilidade na implementação de mudanças). (01/03/2010) Na maior parte das vezes um sistema de banco de dados é utilizado na forma de aplicações tradicionais. Porem há casos de uso mais específicos, tais como: Banco de dados Multimidia Armazena figuras, videoclipe e mensagens sonoras. Sistema de informações geográficas (Geographic Information Systems, GIS), são capazes de armazenar e analisar mapas, dados do tempo e imagens de satélite. Consideramos aqui, também, os bancos de dados meteorológicos. Data Warehouses são utilizados em empresas para extrair e analisar as informações úteis dos bancos de dados para tomada de decisões. Tecnologia de banco de dados ativos e real time: são usados no controle de processos industriais e de produção. As técnicas de pesquisa em banco de dados estão sendo aplicadas na World Wide Web (www) para aprimorar a recuperação de informações necessárias pelos usuários da internet. (Web semântica: significado sentido, maquina entende as necessidades ex laranja cor ou fruta). Em resumo, um banco de dados tem as características: 1 – Representar aspectos do mundo real (minimundo), cujas mudanças são refletidas no banco de dados. 2 – É uma coleção lógica e coerente de dados com algum significado inerente. 3 – É projetado, construído e povoado por dados. 4 – Possui um grupo de usuarios definidos e algumas aplicações especificas a ele. Um sistema de banco de dados, de forma geral, pode ser visto como: Processamento de Arquivos X banco de dados Diversas características distinguem a abordagem de processamento de arquivos e bancos de dados. Podemos entender que, no processamento de arquivos cada usuário define e implementa os arquivos necessários para uma aplicação especifica, dentro dos programas aplicações. Como banco de dados, um único repositório de dados é definido uma única vez, mantido e acessado por vários usuários. quem são as pessoas envolvidas com os bancos de dados? Se o banco de dados é pequeno, normalmente uma pessoa define, constrói e manipula os dados (não há compartilhamento). Porem, em bancos maiores, há uma definição mais detalhada das funções. 1 – Administrador de Banco de Dados. Conhecido como DBA (Database Administrator). Responsável pela autorização para o acesso ao banco de dados, pela coordenação e monitoração do seu uso. Também ser responsável por adquirir recursos de software e hardware conforme necessários, pela segurança e performance do banco. 2 – Projetista de Banco de Dados Responsável pela identificação dos dados que serão armazenados no banco, e por escolher as estruturas apropriadas para representar e armazenar esses dados. Ele se comunica com os usuários de banco (ou futuros usuários) para descobrir as reais necessidades para a criação desse banco. 3 – Usuario final É a pessoa que terá acesso ao banco, para consultas, atualizações e relatórios. Alem dessas pessoas, estão relacionadas ao projeto de banco de desenvolvedores do software de aplicações, que fará o uso do banco de dados (analista de sistema, engenharia de software, programadores). 08/03/10 HISTÓRIA DOS BANCOS DE DADOS Um dos maiores problemas enfrentados com os primeiros sistemas de bancos de dados era a mistura entre os relacionamentos conceituais, o armazenamento físico e a localização de registro no disco. Não havia flexibilidade suficiente para os acessos a registros quando novas transações e consultas eram necessárias. Além disso, ele forneciam interfaces somente para linguagens de programação. A maioria dos sistemas de banco de dados foi implementada em computadores de grande porte (mainframe) e caros, e teve inicio em meados de 1960, até os anos 70/80 Os principais sistemas basearam-se em três paradigmas – sistemas hierárquicos, modelos de rede e arquivo invertidos. PORQUE USAR BANCO DE DADOS RELACIONAL? Os BDR foram criados com o objetivo inicial de separar o armazenamento físico de dados de sua representação conceitual, alem de fornecer fundamentação matemática para os banco de dados. Alem disso, para resolver os problemas relacionados às consultas, foram introduzidas linguagens de consulta de alto níveis, independentes das linguagens de programação. Outros tipos de bancos de dados são: banco de dados orientados a objetos (uso limitado devido a complexibilidade e à falta de um padrão inicial); XML (como um banco de dados não convencional), como técnica que permite o intercâmbio de informações na web, data mining CONCEITOS E ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS. Uma estrutura básica de SGBD é a cliente/servidor. O módulo cliente é projetado para ser executado em uma estação de trabalho ou em um computador pessoal. Normalmente, os programas de aplicação e as interfaces de usuários, que acessam o banco de dados, são processados no módulo cliente. O modulo servidor trata de armazenamento de dados, acessos, pesquisas e outras funções. Uma característica fundamental do uso de banco de dados é que eles permitem a abstração dos dados (ocultar detalhes do armazenamentos), que são desnecessários para a maioria dos usuários. - MODELO DE DADOS Conjunto de conceitos que podem ser usados para descrever a estrutura de um banco de dados. - ESTRUTURA DE UM BANCO DE DADOS Refere-se aos tipos de dados, relacionamentos e restrições que devem suportar os dados - CATEGORIA DE MODELOS DE DADOS São Classificados de acordo com os tipos de conceitos que descrevem sua estrutura. ALTO NIVEL (modelos de dados conceituais): descrevem os dados como os usuários os percebem. BAIXO NIVEL (ou modelo fisico): descrevem os dados como são armazenados no computador. - ESQUEMA DE BANCO DE DADOS. Refere-se á descrição do banco de dados. Ex: Aluno: |Nome|NumeroAluno|Turma|Curso| (Diagrama esquemático) (esquema). Um banco de dados pode estar no estado vazio (sem nenhum dado) ou popular (=carregado). 15/03/2009 ARQUITURA DE TRÊS ESQUEMAS A abordagem de banco de dados tem quatro características importantes: 1. Separação de programas e dados (independência de dados e operações de programas). 2. Suporte a múltiplas visões (views) de usuários. 3. Uso de esquemas (catálogos) para armazenar a descrição de bancos de dados. 4. Compartilhamento de dados e o processamento de transação multi-usuário. O objetivo da arquitetura de três esquemas é separar o usuário da aplicação do banco físico. Ela é caracterizada em três níveis: foto usuários finais... Conceitual me.r – DER tipo entidade (modelo relacional) esta para classe. Uml(00) – MD – Classes - Objeto Lógico (m.relacional) (esquema) Físico (implementação do banco de dados). MAPEAMENTO, transformação... sai de um nível e passa para o outro, transformar o que estava vendo em outras informações.