aula 2 banco de dados

Click here to load reader

Upload: jorge-avila-miranda

Post on 19-May-2015

1.416 views

Category:

Documents


1 download

TRANSCRIPT

  • 1. Jorge vila Banco de Dados

2. Abstrao de Dados O grande objetivo de um sistema de banco de dados prover aos usurios uma viso abstrata dos dados. 3. Abstrao de Dados Isto , o sistema omite certos detalhes de como os dados so armazenados e mantidos. Entretanto, para que o sistema possa ser utilizado, os dados devem ser buscados de forma eficiente. Este conceito tem direcionado o projeto de estrutura de dados complexas para a representao de dados em um banco de dados. Uma vez que muitos dos usurios de banco de dados no so treinados para computao, a complexidade est escondida deles atravs de diversos nveis de abstrao que simplificam a interao do usurio com o sistema. 4. Abstrao de Dados Nvel Interno ou fsico: O nvel mais baixo de abstrao descreve como os dados esto realmente armazenados. Neste nvel se desenham os arquivos que contm a informao, a localizao dos mesmos e sua organizao, ou seja, criam-se os arquivos de configurao. 5. Abstrao de Dados Nvel conceitual: O prximo nvel de abstrao descreve quais dados esto armazenados de fato no banco de dados e as relaes que existem entre eles. Aqui o banco de dados inteiro descrito em termos de um pequeno nmero de estruturas relativamente simples. Embora as implementaes de estruturas simples no nvel conceitual possa envolver complexas estruturas de nvel fsico, o usurio do nvel conceitual no precisa preocupar-se com isso. O nvel conceitual de abstrao usado por administradores de banco de dados, que podem decidir quais informaes devem ser mantidas no BD; 6. Abstrao de Dados Nvel externo ou de viso: o mais prximo ao usurio e descreve apenas parte do banco de dados. Apesar do uso de estruturas mais simples do que no nvel conceitual, alguma complexidade perdura devido ao grande tamanho do banco de dados. Muitos usurios do sistema de banco de dados no estaro interessados em todas as informaes. Em vez disso precisam de apenas uma parte do banco de dados. O nvel de abstrao das vises de dados definido para simplificar esta interao com o sistema, que pode fornecer muitas vises para o mesmo banco de dados. 7. Exerccio 1. Qual a importncia dos bancos de dados para os Sistemas de Informao? 2. O que um Banco de Dados? Cite dois exemplos de sistemas que voc acredita que utiliza banco de dados. 3. Qual a diferena entre dado, fato, informao e metadados? 4. Quais os principais componentes de um Sistema de Banco de Dados? 5. Quais as operaes bsicas que o usurio pode realizar em um banco de dados? 6. Quais os nveis de abstrao de um Banco de 8. Sistema Gerenciador de Banco de dados - SGBD Ele responsvel por salvar os dados no HD, manter em memria os dados mais acessados, ligar dados e metadados, disponibilizar uma interface para programas e usurios externos acessem o banco de dados (para banco de dados relacionais, utilizada a linguagem SQL), encriptar dados, controlar o acesso a informaes, manter cpias dos dados para recuperao de uma possvel falha, garantir transaes no banco de dados, enfim, sem o SGBD o banco de dados no funciona! 9. Sistema Gerenciador de Banco de dados - SGBD 10. Sistema Gerenciador de Banco de dados - SGBD Podemos ento definir um Sistema Gerenciados de Banco de Dados como um o conjunto de programas de computador (softwares) responsveis pelo gerenciamento de uma base de dados. Seu principal objetivo retirar da aplicao cliente a responsabilidade de gerenciar o acesso, a manipulao e a organizao dos dados. O SGBD disponibiliza uma interface para que seus usurios possam incluir, alterar ou consultar dados previamente armazenados. O SGBD ento responsvel por manipular os dados contidos no banco de dados. Porm suas funcionalidades vo muito alm de manipulao de dados, ele tambm responsvel por definir e construir um banco de dados. 11. Sistema Gerenciador de Banco de dados - SGBD 12. Sistema Gerenciador de Banco de dados - SGBD Caractersticas de um SGBD: O SGBD faz todo o gerenciamento de transaes dos bancos de dados contidos nele. Uma transao em um banco de dados consiste em um conjunto de operaes que so tratadas como uma unidade lgica indivisvel. EX: Quando vamos fazer uma transferncia bancria, so feitas no mnimo duas operaes, a retirada do dinheiro da conta de quem est transferindo e o depsito na conta da pessoa que vai receber o valor transferido, ou seja, a transferncia o conjunto dessas operaes. 13. Sistema Gerenciador de Banco de dados - SGBD As transaes realizadas pelo SGBD nos bancos de dados devem seguir algumas propriedades fundamentais conhecidas como ACID (Atomicidade, Consistncia, Isolamento e Durabilidade). 14. Atomicidade Capacidade de uma transao ter todas as suas operaes executada ou nenhuma delas. tudo ou nada. Caso a transao no acontea totalmente o banco de dados executa um rollback e retorna ao seu estado consistente anterior, caso todas a transao acontea executado o commit; 15. Consistncia A execuo de uma transio deve levar o banco de dados de um estado consistente a outro estado consistente. 16. Isolamento A propriedade de isolamento garante que a transao no ser interferida por nenhuma outra transao concorrente. 17. Durabilidade A propriedade de durabilidade garante que o que foi salvo, no ser mais perdido. 18. Sistema Gerenciador de Banco de dados - SGBD Alm da gerencia de transaes o SGBD possui algumas caractersticas que permitem controlar e acompanhar melhor os dados armazenados. As caractersticas bsicas de um SGBD so: Controle de Redundncias Controle de concorrncia Controle de Acesso Controle de Integridade Backups 19. Controle de Redundncia A redundncia consiste no armazenamento de uma mesma informao em locais diferentes, provocando inconsistncias. Se uma mesma informao estiver armazenada em mais de um lugar pode acontecer de voc atualizar em um lugar e esquecer-se de atualizar no outro, ficando o banco de dados inconsistente. 20. Controle de Concorrncia O SGBD permite que duas ou mais pessoas acessem a mesma base de dados ao mesmo tempo e o sistema deve controlar para que um acesso no interfira no outro. Um sistema de compras Web por exemplo vrias pessoas podem realizar uma compra ao mesmo tempo, e o prprio SGBD controla pra que os dados de todas as compras sejam gravados corretamente. 21. Controle de Acesso O SGDB tem mecanismos para criao de regras de segurana, que vo desde a definio de login e senha para os usurios, at a permisso de acesso ao SGBD e acesso aos dados armazenados. possvel definir por exemplo que um usurio tem permisso somente para leitura de dados, e um outro usurio tenha permisso para criar base de dados e manipul-la, mas no pode criar novos usurios ou fazer backup. 22. Controle de Integridade Um SGBD pode definir regras que garantem a integridade dos dados. Essas regras so definidas para garantir que os dados contidos no banco de dados estejam corretos. Por exemplo, podemos definir uma regra em um banco que o campo sexo pode receber somente M para masculino e F para feminino, no aceitando outro tipo de letra, o que deixaria dados errados no banco. 23. Backups O SGBD apresenta facilidade para recuperar falhas de hardware e software, atravs da existncia de arquivos de "pr-imagem ou de outros recursos automticos, exigindo minimamente a interveno de pessoal tcnico.