430 likes | 857 Views
Banco de Dados I Introdução. Prof. Alexandre Perin de Souza alexandre.perin@ifsc.edu.br. Sumário. Conceitos básicos Um pouco de história Motivação BD x SGBD Etapas do Projeto de banco de dados. Conceitos básicos.
E N D
Banco de Dados IIntrodução Prof. Alexandre Perin de Souza alexandre.perin@ifsc.edu.br
Sumário Conceitos básicos Um pouco de história Motivação BD x SGBD Etapas do Projeto de banco de dados
Conceitos básicos • Dado: fato em sua forma primária, sem que se possa estabelecer um significado. • Informação: é o dado dentro de um contextoque o caracterize. • Bancode dados ou base de dados (BD): são dados organizados, inter-relacionadose persistentesquerepresentamfatospresentesem um domínio. • Inter-relacionados: que se relacionam, se ligam de algummodo • Persistentes: ficamarmazenados • Domínio: Banco, Loja, Escola, Hotel etc.
Um pouco de história • Na década de 60, o armazenamento e acesso a dados era bastante rudimentar. As aplicações (programas) usavam armazenar e acessar dados através de arquivos • Cada programa teria que além da lógica em si também se preocupar com o armazenamento e recuperação de dados. • Em 1963 na conferência DevelopmentandManagmentof a Computer-Centered Data Basesurgiu o termo database (banco de dados); • Já em 1970, um pesquisador da IBM, Ted Codd, publicou o primeiro artigo sobre bancos de dados relacionais. • O artigo discutia como poderia ser possível armazenar e recuperar grandes quantidades de dados; • ...
Um pouco de história • ... • Coddvisionava um sistema onde o usuário seria capaz de acessar as informações através de comandos em inglês, onde as informações estariam armazenadas em tabelas; • Ainda na década de 70, surgiu na IBM um grupo de pesquisa conhecido como System R; • Em 1976, apesar dos estudos realizados pelo grupo de pesquisa System R, o primeiro sistema comercial de banco de dados foi construído pela HoneywellInformation Systems Inc. e lançado junho de 1976; • ...
Um pouco de história • ... • Outros sistemas de banco de dados apareceram no início dos anos 80 com a empresa Oracle através do Oracle 2 e depois com a IBM através do SQL/DS, servindo como sistema e depósito de informações de outras empresas; • As pesquisas evoluíram e o Sistema R tornou-se DB2 (banco de dados desenvolvido pela IBM), com isso foi criada uma linguagem chamada SQL (Structured Query Language), Linguagem de Consulta Estruturada que até hoje é a linguagem mais utilizada no dia a dia; • Na década de 90 começou a surgir outros bancos de dados, como o DBase III, Paradox, SQL Server, MySQL e muitos outros.
Por que estudar Banco Dados? • A quantidade de dados vem crescendo • Imagine as entidades abaixo tendo que gerenciar seus dados sem um sistema • Banco: as operações bancárias • Pagamentos, saques, depósitos etc • Universidade: dados dos alunos • Disciplinas cursadas, professores etc • Loja de departamento • Produtos, vendas, estoque, funcionários etc • …
Por que estudar Banco Dados? • Mas, o significa a palavra gerenciar: • Obter controle sobre os dados e as operações realizadas sobre eles; • Poder compartilhar dados; • Poder restringir o acesso a um conjunto de dados; • Evitar que dados redundantes (cópia idêntica) possam gerar informações inconsistentes • Endereço diferente para um mesmo cliente • Permitir acessar (fazer consultas) dados e obter históricos sobre eles; • ...
Mas, nem sempre foi assim... Banco (Instituição financeira) Aplicação Poupança Aplicação FGTS Camada de armazenamento e acesso a dados fazia parte de cada aplicação, era embutida nela. Interface Interface Lógica Lógica Armazenamento Armazenamento Por exemplo, antigamente, cada aplicação teria que definir e implementar a forma de armazenamento e o acesso aos dados.
Mas, nem sempre foi assim... • Principal dificuldades da abordagem anterior: • Maior tempo e esforço gasto para desenvolver e manter aplicações • ...
Mas, e a solução... Aplicação Poupança Aplicação FGTS Interface Interface Lógica Lógica Programa Armazenamento • Solução • Separação da camada de armazenamento da camada de aplicação
Banco de dados Dados organizados e compartilhados entre todas as aplicações do banco Usando um Gerenciador de base de dados Empréstimo Poupança FGTS • Exemplos destes Softwares: • Livres: • FireBird, PostgreSQL e MySQL • Comerciais (pagos) • Oracle, DB2 e SQLServer Software que permite a criação e gerência da base de dados SGBD Exemplo
Sistema Gerenciador de Bancos de Dados • Um Sistema Gerenciador de Banco de Dados (SGBD ): • É um conjunto de programas de computador (softwares) responsáveis pelo gerenciamento de uma base de dados. • O SGBD disponibiliza uma interface para que seus clientes possam incluir, alterar ou consultar dados previamente armazenados.
Sistema Gerenciador de Bancos de Dados • Objetivosprincipais: • Retirar da aplicação a responsabilidade de gerenciar o acesso, a manipulação e a organização dos dados • Isolarosusuários (desenvolvedores) dos detalhesmaisinternos do banco de dados (abstração de dados). • Proverindependência de dados àsaplicações (estruturafísica de armazenamento e à estratégia de acesso).
Sistema Gerenciador de Bancos de Dados • Vantagens: • Rapideznamanipulação e no acesso à informação; • Reduçãodo esforçohumano (desenvolvimento e utilização); • Reduçãoda redundância e da inconsistência de informações • Reduçãode problemas de integridade (qualidadedos dados – dados devemrespeitarcertasregras) • Idade de um funcionárionuncapodesernegativa • Compartilhamentode dados; • … • Aplicaçãoautomática de restrições de segurança.
Sistema Gerenciador de Bancos de Dados • Usuários: • Final ou de aplicação • Fazuso do SGBD paraarmazenamento e acesso de dados • Administrador de Banco de Dados (DBA) • É o profissional responsável por gerenciar, instalar, configurar, atualizar e monitorar um banco de dados ou sistemas de bancos de dados • Certificação: algumas organizações podem requerem do DBA uma certificação em um algum SGBD particular.
Sistema Gerenciador de Bancos de Dados • Algumasfunções de um DBA: • Saber os comandos básicos e exclusivos de cada SGBD. • Verificar e zelar pela integridade do banco de dados. • Ter um controle de acesso, ou privilégios, aos dados como quem pode acessar e o que pode acessar e talvez quando possa acessar. • Garantir o acesso ao banco de dados no maior tempo possível. • Garantir o máximo de desempenho para as consultas ao banco de dados. • Auxiliar a equipe de desenvolvimento e a equipe de testes a maximizar o uso e desempenho do banco de dados. • Contatar suporte técnico em caso de certos problemas com o banco de dados.
Projeto de Banco de Dados • Divido em três fases: • Projeto Conceitual • Projeto Lógico • Projeto Físico
Projeto de Banco de Dados • Projeto Conceitual • Modelagem de dados ou nível conceitual • É independente de SGBD • Identificar entidades e como elas representam um domínio • Ferramenta principal • Diagrama de Entidade-Relacionamento • Notação de Peter Chen • Propôs a técnica de modelagem Entidade-Relacionamento • Utilizada por ser considerada uma notação clássica.
Projeto de Banco de Dados • Projeto Lógico • Adota-se um modelo de banco de dados • Relacional, objetos etc • Dependente do modelo de dados • Define como o modelo conceitual será implementado em um SGBD específico • Conceitos são mapeados para o modelo de banco de dados adotado (usado pelo SGBD)
Projeto de Banco de Dados • Projeto Físico • Nesta etapa o modelo do banco de dados é enriquecido com aspectos que influenciam: • Desempenho • Espaço utilizado • Número de transações suportadas • Número de usuários suportados • Tipos de estruturas físicas de armazenamento (tamanho dos registros físicos, índices etc • Na prática, o projeto físico é um processo contínuo, que ocorre mesmo depois de o banco de dados já estar em funcionamento. Este processo é chamado de sintonia ou tuning.
Consulta Paciente Médico CRM nome Níveis de Abstração de Dados Sistema Médico
Bibliografia MÉTROPOLE DIGITAL. Introdução a Banco de Dados. Disponível em<http://www.metropoledigital.ufrn.br/aulas_avancado/web/disciplinas/banco_de_dados/aula_01.html>. Acesso em: Fev. 2013.