Anda di halaman 1dari 67

Faculdade Estcio de S de Santa Catarina Aula 01 Conceitos bsicos de Banco de Dados

Prof. Daniel dos Santos Jr, MSc.

Roteiro da aula
Introduo a Banco de Dados O que so dados? O que um banco de dados?
o

Observaes importantes sobre BD

Sistema de Gerenciamento de Banco de Dados (SGBD)


o o
o o

Funes do SGBD Objetivos e vantagens do sistema de BD

Sistema de Banco de Dados


Profissionais de Banco de Dados Modelagem - pequena introduo

Introduo
A importncia da informao para a tomada de decises nas organizaes tem impulsionado o desenvolvimento dos sistemas de processamento de informaes.

Algumas ferramentas
Processadores de texto; Planilhas; Sistemas de gerenciamento de banco de dados (SGBDs): armazenamento de grandes volumes de dados, estruturados em registros e tabelas, com recursos para acesso e processamento das informaes)

O que so dados?
Dados so fatos no seu estado natural, sem sumarizaes e sem anlise. Informaes so dados que foram transformados em uma forma mais significativa. WATSON, 2004 Os dados so fatos que podem ser gravados e que possuem um significado implcito. Por exemplo, considere nomes, nmeros telefnicos e endereos de pessoas que voc conhece. ELMASRI e NAVATHE, 2005

O que Banco de Dados?


Um banco de dados uma coleo de dados persistentes utilizada pelos sistemas de aplicao de uma determinada empresa. Por persistentes entende-se que ...diferem em espcie de outros dados mais efmeros, como dados de entrada, dados de sada, instrues de controle, filas de trabalho, blocos de controle de software, resultados intermedirios. DATE, 2000

O que Banco de Dados?


Um BD projetado, construdo e povoado com dados, atendendo a uma proposta especfica. Possui um grupo de usurios definido e algumas aplicaes preconcebidas, de acordo com o interesse desse grupo de usurios. ELMASRI e NAVATHE, 2005

Observaes importantes
Um banco de dados representa algum aspecto do mundo real, sendo chamado, s vezes, de minimundo ou de universo de discurso (UoD). As mudanas no minimundo so refletidas em um BD; Um BD uma coleo lgica coerente de dados com um significado inerente; uma disposio desordenada dos dados no pode ser referenciada como um banco de dados.

Sistema de Gerenciamento de BD
Um sistema de gerenciamento de banco de dados (SGBD) uma coleo de dados inter-relacionados e um conjunto de programas para acessar esses dados. A coleo de dados, normalmente chamada de banco de dados, contm informaes relevantes a uma empresa. O principal objetivo de um DBMS fornecer uma maneira de recuperar informaes de BD que seja tanto conveniente quanto eficiente (SILBERSCHATZ et al, 2006).

Sistema de Gerenciamento de BD

Uma funo geral fornecida pelo SGBD a de isolar os usurios do BD dos detalhes do nvel de hardware (assim como os sistemas de linguagem de programao protegem os programadores de aplicaes dos detalhes no nvel do hardware) DATE, 2000

Sistema de Gerenciamento de BD
Um SGBD uma coleo de programas que permite aos usurios criar e manter um BD. O SGBD , portanto, um sistema de software de propsito geral que facilita os processos de definio, construo, manipulao e compartilhamento de BD entre vrios usurios e aplicaes. ELMASRI e NAVATHE, 2005

Funes do SGBD 1/4


Definio: implica especificar os tipos de dados, as estruturas e as restries para os dados a serem armazenados; Construo: o processo de armazenar os dados em alguma mdia apropriada controlada pelo SGBD;

Funes do SGBD 2/4


Manipulao: inclui algumas funes, como pesquisas em BD para recuperar um dados especfico, atualizao do banco para refletir as mudanas no minimundo e gerar os relatrios dos dados; Compartilhamento: permite aos mltiplos usurios e programas acessar, de forma concorrente, o BD;

Funes do SGBD 3/4


Proteo: inclui a proteo do sistema contra o mau funcionamento ou falhas (crashes) no hardware ou software, e segurana contra acessos no autorizados ou maliciosos;

Funes do SGBD 4/4


Manuteno: um BD tpico pode ter um ciclo de vida de muitos anos, ento, os SGBD devem ser capazes de manter um sistema de BD que permita a evoluo dos requisitos que se alteram ao longo do tempo.

Sistema de banco de dados


... basicamente um sistema computadorizado de armazenamento de registros; isto , um sistema computadorizado cujo propsito geral armazenar informaes e permitir ao usurio buscar e atualizar essas informaes quando solicitado. DATE, 2000

Ambiente de um Sistema de Banco de Dados

O que so dados?
Dados so fatos no seu estado natural, sem sumarizaes e sem anlise. Informaes so dados que foram transformados em uma forma mais significativa. WATSON, 2004 Os dados so fatos que podem ser gravados e que possuem um significado implcito. Por exemplo, considere nomes, nmeros telefnicos e endereos de pessoas que voc conhece. ELMASRI e NAVATHE, 2005

O que so metadados?
Todo SGBD deve fornecer uma funo de catlogo ou dicionrio...O catlogo contm informaes detalhadas (algumas vezes chamadas informaes do descritor ou metadados) referentes aos diversos objetos que so de interesse do prprio sistema. So exemplos desses objetos variveis de relaes, ndices, usurios, restries de integridade, restries de segurana, e assim por diante. DATE, 2000

Objetivos de um sistema de banco de dados


Isolar os usurios dos detalhes mais internos do banco de dados (abstrao de dados); Prover independncia de dados s aplicaes (estrutura fsica de armazenamento e estratgia de acesso).

Vantagens de um sistema de banco de dados


Rapidez na manipulao e no acesso informao; Reduo do esforo humano (desenvolvimento e utilizao); Disponibilizao da informao no tempo necessrio; Controle integrado de informaes distribudas fisicamente;

Vantagens de um sistema de banco de dados


Reduo da redundncia e de inconsistncia de informaes; Compartilhamento de dados; Aplicao automtica de restries de segurana; Reduo de problemas de integridade.

Estratgias para se manter a integridade no BD

Conseqncia da integridade no BD Proteger a existncia Manter a qualidade

Estratgias p/ se chegar ao resultado esperado Isolamento (preventivo) BD backup e recuperao (solucionadora) Atualizar autorizao Restries de integridade/ validao de dados Controle de atualizao concorrente

Assegurar o sigilo Controle de acesso Criptografia

Profissionais na rea de banco de dados

Administradores de BD
Em uma organizao na qual muitas pessoas usam os mesmos recursos, h a necessidade de um administrador-chefe para gerenciar esses recursos. No ambiente de banco de dados, o principal recurso o prprio BD e, a seguir, o SGBD e os softwares relacionados. Administrar esses recursos responsabilidade do administrador de banco de dados database administrator (DBA).

Funes de um DBA 1/4


Definir o esquema conceitual: quais informaes devem ser mantidas no BD. Normalmente, esse processo referenciado como projeto lgico de BD; Definir o esquema interno: decide como sero representados os dados no BD armazenado. Normalmente, esse processo referenciado como projeto fsico de BD e feito DEPOIS do projeto lgico;

Funes de um DBA 2/4


Ligao com usurios: a fim de garantir que os dados de que eles necessitam estaro disponveis, alm de fornecimento de instruo tcnica e assistncia para determinao e resoluo de problemas; Definir restries de segurana e integridade;

Funes de um DBA 3/4


Definir normas de descarga e recarga: definir e implementar um esquema apropriado de controle de danos, em geral envolvendo
a) descarga peridica ou dumping do BD para o meio de armazenamento de backup, e b) recarregamento do BD quando necessrio, a partir do dump mais recente. Dump: copiar dados de uma rea de armazenamento para outra.

Funes de um DBA 4/4


Monitorar o desempenho e responder a requisitos de mudanas: responsvel pela organizao do sistema de modo a obter o desempenho que seja o melhor para a empresa.

Projetistas de BD
So responsveis pela identificao dos dados que sero armazenados no BD e tambm por escolher as estruturas apropriadas para representar e armazenar esses dados. Essas tarefas so realizadas antes que o BD seja realmente implementado e alimentados com dados. Podem fazer parte da equipe do DBA.

Usurios finais
So pessoas cujas profisses requerem o acesso a um BD para consultas, atualizao e relatrios. Podem ser divididas em quatro categorias: Usurios finais casuais; Iniciantes ou usurios finais parametrizveis; Usurios finais sofisticados; Usurios autnomos (stand-alone).

Usurios finais casuais


Acionam o BD ocasionalmente, mas precisam de informaes diferentes a cada acesso. Eles usam uma linguagem de consulta a BD sofisticada para especificar suas solicitaes e normalmente so gerentes de nvel mdio ou elevado ou outros profissionais com necessidades ocasionais.

Usurios finais parametrizveis


Compem grande parcela dos usurios finais. Seu trabalho exige constante envolvimento com consulta e atualizao de BD, usando tipos de consulta e atualizaes padronizadas chamadas transaes customizadas que tenham sido cuidadosamente programadas e testadas. Exemplo: O funcionrio responsvel pela reserva de vos checa a viabilidade para atender s solicitaes de reservas e as confirmam.

Usurios finais sofisticados


Incluem os engenheiros, cientistas, analistas de negcios e outros que se familiarizam com as facilidades do SGBD para implementar aplicaes que atendam s suas solicitaes complexas.

Usurios autnomos
Mantm um BD pessoal por meio do uso de pacotes de programas prontos que possuem interfaces grficas ou programas baseados em menus fceis de usar. Exemplo: um usurio de um pacote para clculo de impostos que armazena seus dados financeiros pessoais para o pagamento dos impostos.

Trabalhadores dos bastidores


Projetistas e implementadores de sistemas SGBD: equipe de desenvolvedores da Oracle ou MySQL; Desenvolvedores de ferramentas: equipe de profissionais que desenvolveram o DBDesigner, o DBVisualizer ou o MySQL Turbo Manager.

Modelo Entidade-Relacionamento

Roteiro da aula
A importncia da Modelagem de Dados Modelo Entidade-Relacionamento
o

Conceito e objetivo

Diagrama E-R de Peter Chen


o Entidades o Atributos o Relacionamentos

A importncia da Modelagem de Dados


A modelagem conceitual uma fase muito importante no planejamento de uma aplicao de um banco de dados bem sucedida. Geralmente, o termo sistema de um banco de dados refere-se a um BD particular e aos programas a ele associados, que implementam consultas e atualizaes.

Exemplo de sistema de BD
Por isso, a parte do sistema de um BD exigir o projeto, implementao e testes desses programas de aplicao. Tradicionalmente, o projeto e testes dos programas de aplicao so tratados mais no domnio da engenharia de software do que no de um banco de dados.

Exemplo de aplicao de um BD
Como as metodologias de projeto de BD priorizam os conceitos de operaes em objetos de BD, e as metodologias de engenharia de software tratam mais especificamente os detalhes da estrutura dos BDs que os programas de software vo usar e acessar, est claro que essas atividades esto fortemente relacionadas.

Modelo Entidade-Relacionamento
DEFINIO: um modelo baseado na percepo do mundo real, que consiste em um conjunto de objetos bsicos chamados entidades e nos relacionamentos entre esses objetos. OBJETIVO: facilitar o projeto de banco de dados, possibilitando a especificao da estrutura lgica geral do banco de dados.

Diagrama Entidade-Relacionamento
A estrutura lgica geral de um BD pode ser expressa graficamente por um Diagrama Entidade-Relacionamento (DER).

Componentes do Diagrama E-R (segundo Peter Chen)


Retngulos: representa a entidade Elipses: representa os atributos; Losangos: representa os relacionamentos; Linhas: ligam atributos a entidade e entidade a relacionamentos.

Exemplo de uma entidade e seus atributos

Fornecedor

Cod-Forn

Nome

Cidade

Estado

Exemplo de uma entidade e seus atributos

Tipos de atributos
Monovalorado: comporta um nico valor para cada ocorrncia daquela entidade. Exemplo: telefone do cliente, data de nascimento do aluno; Multivalorado: comporta um ou mais valores para cada ocorrncia daquela entidade. Exemplo: endereo do cliente, dependentes do funcionrio.

Tipos de atributos
Atributo Determinante: identifica cada ocorrncia de uma entidade (tambm conhecido como atributo chave) Exemplo: Cdigo do Funcionrio, Matrcula do Aluno, CNPJ do Fornecedor Domnio de um atributo: conj. de valores permitidos para o atributo. Exemplo: Sexo {M, F}; Salrio {0 a 99.999,99}

Relacionamentos
Estrutura que indica o relacionamento de duas ou mais entidades. Possui diversas formas de representao, que variam conforme a sua cardinalidade. As formas mais comuns so:
o o o

1:1: leia-se um para um 1:N: leia-se um para muitos N:M: leia-se muitos para muitos

Projeto de chaves
Chave: um conjunto de um ou mais atributos que, tomados coletivamente, permite-nos identificar unicamente uma entidade no conjunto-entidade. Integridade de Entidade: nenhum atributo que participe da chave de um conjunto-entidade deve aceitar valores nulos.

Aspectos relevantes
A questo fundamental do projeto de chaves reduzir ao mximo os efeitos de redundncia; A alterao dos valores de campos constituintes da chave primria ou a remoo de uma entidade de um conjunto-entidade pode ocasionar problemas de integridade referencial.

Exemplo de DER por Chen

Exemplo DER por Martin

Dicas para elaborao de Diagramas E-R


A presena de um substantivo usualmente indica uma entidade. Exemplos: Clientes, Fornecedores, Produtos; A presena de um verbo uma forte indicao de um relacionamento. Exemplos: controla, possui, eh_matriculado, gerencia; Um adjetivo, que uma qualidade, uma forte indicao de um atributo. Exemplos: nome do produto, data de

Exerccios
1.Construa um diagrama E-R para um hospital com um conjunto de pacientes e um conjunto de mdicos. Registros de diversos testes realizados so associados a cada paciente. 2.Construa um diagrama E-R para uma companhia de seguros de automveis com um conjunto de clientes, onde cada um possui um certo nmero de carros. Cada carro tem um nmero de acidentes associados a ele.

Referncias bibliogrficas
DATE, C. J. Introduo a sistemas de bancos de dados. Rio de Janeiro: Campus, 2000. ELMASRI, Ramez; NAVATHE, Shamkant. Sistemas de banco de dados. So Paulo: Addison Wesley, 2005.

Referncias bibliogrficas
FILETO, Renato. Introduo: Conceitos bsicos e a arquitetura de sistemas de bancos de dados. Material de aula da disciplina de Banco de Dados da UNICAMP, 2001. MEIRA, Fbio. Apostila de Sistemas de Banco de Dados. Universidade de Marlia UNIMAR. So Paulo, 200?.

Referncias bibliogrficas
SANCHES, Andr Rodrigo. Mais informaes sobre SGBD. Disciplina de Fundamentos de Armazenamento e Manipulao de Dados. Depto de Cincia da Computao. Instituto de Matemtica e Estatstica. Universidade de So Paulo. Obtido em http://www.ime.usp.br/~andrers/aulas/bd200 5-1/aula5.html em fev/07.

Referncias bibliogrficas
SILBERSCHATZ, A; KORTH, H. F; SUDARSHAN, S. Sistema de banco de dados. Rio de Janeiro: Elsevier, 2006. TAKAI, O.K; ITALIANO, I.C;FERREIRA, J.E. Introduo a banco de dados. Departamento de Cincia da Computao (IME), Universidade de So Paulo, 2005.

Referncias bibliogrficas
WATSON, Richard T. Data Management: banco de dados e organizaes. Rio de Janeiro: LTC, 2004.