Você está na página 1de 45

BANCO DE DADOS

Prof. Lilian Viana

Curso: Tcnico em Informtica

SGBD
Sistema Gerenciador de Banco de Dados (SGBD)
um conjunto de programas com a finalidade de manipular um conjunto de dados;

Com a introduo de um SGBD em uma organizao demanda o surgimento de um novo profissional, o Administrador de Banco de Dados (DBA).
O DBA responsvel pela manuteno do SGBD e da Base de Dados em si, centralizando todo o gerenciamento sobre a estrutura dos dados da empresa.

SGBD
Sistema Gerenciador de Banco de Dados (SGBD)
um conjunto de programas com a finalidade de manipular um conjunto de dados;

Com a introduo de um SGBD em uma organizao demanda o surgimento de um novo profissional, o Administrador de Banco de Dados (DBA).
O DBA responsvel pela manuteno do SGBD e da Base de Dados em si, centralizando todo o gerenciamento sobre a estrutura dos dados da empresa.

Caractersticas de um SGBD
CONTROLE DE REDUNDNCIA:A redundncia, ou seja, a repetio de dados, deve ser evitada para se minimizar possibilidade de inconsistncias. COMPARTILHAMENTO DE DADOS:Em um ambiente multiusurios deve-se possibilitar a manipulao simultnea de dados distintos ou dos mesmos dados conforme regras abaixo. CONTROLE DE ACESSO: Verificao automtica do tipo de acesso pedido por cada usurio. Os nveis de segurana so estabelecidos para cada usurio independentemente, de acordo com suas necessidades. A identificao de cada usurio, por parte do SGBD, feita pelo nome e senha cadastrados. CONTROLE DE TRANSAO: Transao o conjunto de operaes que devem ser executadas completamente. So normalmente usadas em situaes crticas (atualizaes ou incluses) de longa durao que podem afetar a consistncia do BD. Exemplo: bug milnio, corte dos 3 zeros, aumento geral dos produtos, etc. O SGBD deve utilizar mecanismos internos para que nenhuma falha ocorra durante a execuo da transao.

ACESSO EM MLTIPLAS INTERFACES: Possibilidade de usar diversas interfaces mesmo se o SGBD estiver sendo utilizado. Por exemplo: Se existe uma aplicao em Delphi com o SGBD Interbase, se trocar a linguagem para Visual Basic, no necessrio fazer alteraes no SGBD. RESTRIES DE INTEGRIDADE: Estabelecimento de um formato para os dados inseridos de modo a garantir uma certa integridade e facilitar o armazenamento. Ex. Tamanho do nomes em pre igual a 30 e em maisculo, armazenamento dos salrios em dlar, etc. Algumas regras de integridade so estabelecidas pelo prprio SGBD para manter o BD consistente e outras so definidas pelo DBA por meio de sentenas condicionais queso verificadas toda vez que um dado armazenado no BD. BACKUP E RECUPERAO:Estabelecer o backup automtico do BD total ou parcial em momentos estabelecidos pelo DBA. Proporcionar proteo contra a perda de informaes devido a falhas no dispositivo de armazenamento (discos). INDENPENDNCIA DE DADOS: A descrio fsica dos arquivos mantida internamente pelo SGBD e de sua inteira responsabilidade e exclusividade. Programas aplicativos no dispem da descrio fsica e sim de uma descrio externa. Alteraes nos arquivos podem no afetar os programas aplicativos. INDEXAO AUTOMTICA: Com a indicao explcita dos atributos que sero mais utilizados em consultas do SGBD cria os arquivos de indexao que tornaro mais rpidas as pesquisas. A estrutura de indexao e de organizao dos arquivos de dados prprio de cada SGBD e normalmente no de domnio dos usurios comuns.

ACESSO EM MLTIPLAS INTERFACES: Possibilidade de usar diversas interfaces mesmo se o SGBD estiver sendo utilizado. Por exemplo: Se existe uma aplicao em Delphi com o SGBD Interbase, se trocar a linguagem para Visual Basic, no necessrio fazer alteraes no SGBD. RESTRIES DE INTEGRIDADE: Estabelecimento de um formato para os dados inseridos de modo a garantir uma certa integridade e facilitar o armazenamento. Ex. Tamanho do nomes em pre igual a 30 e em maisculo, armazenamento dos salrios em dlar, etc. Algumas regras de integridade so estabelecidas pelo prprio SGBD para manter o BD consistente e outras so definidas pelo DBA por meio de sentenas condicionais queso verificadas toda vez que um dado armazenado no BD. BACKUP E RECUPERAO:Estabelecer o backup automtico do BD total ou parcial em momentos estabelecidos pelo DBA. Proporcionar proteo contra a perda de informaes devido a falhas no dispositivo de armazenamento (discos). INDENPENDNCIA DE DADOS: A descrio fsica dos arquivos mantida internamente pelo SGBD e de sua inteira responsabilidade e exclusividade. Programas aplicativos no dispem da descrio fsica e sim de uma descrio externa. Alteraes nos arquivos podem no afetar os programas aplicativos. INDEXAO AUTOMTICA: Com a indicao explcita dos atributos que sero mais utilizados em consultas do SGBD cria os arquivos de indexao que tornaro mais rpidas as pesquisas. A estrutura de indexao e de organizao dos arquivos de dados prprio de cada SGBD e normalmente no de domnio dos usurios comuns.

Linguagens de acesso a um SGBD


Existe uma linguagem especfica para definir o esquema conceitual e fsico de um

SGBD. A linguagem utilizada a Structured Query Language (SQL), que apesar de existir um padro definido, varia de SGBD pra SGBD. A SQL pode ser dividida em 3 grupos: Linguagem de Definio de Dados (DDL): Responsvel por criar e manipular os objetos de armazenamento de dados no SGBD. Linguagem de Manipulao de Dados (DML): Responsvel por manipular os dados do SGBD. Linguagem de Controle dos Dados (DCL): Responsvel por permitir o acesso de usurios ao SGBD. Os aplicativos so escritos em uma linguagem de programao, que pode ser: JAVA,DELPHI, VISUAL BASIC, COBOL,C, PASCAL, ETC. A SQL utilizada de forma embutida nestas linguagens. A linguagem SQL engloba numa nica linguagem todos os recursos necessrios para a manipulao da Base de Dados.

Arquitetura de um SGBD
A arquitetura de um SGBD se divide em trs nveis:

Nvel Interno ou Fsico: o mais prximo do meio de armazenamento fsico, ou seja, aquele que se ocupa do modo como os dados so fisicamente armazenados. Nvel Conceitual ou Lgico: Descreve quais dados esto armazenados no banco de dados e quais os inter relacionamentos entre eles. Este nvel utilizado pelos administradores. Nvel externo: o mais prximo dos usurios, ou seja, aquele que se ocupa do modo como os dados so vistos por usurios individuais.

Nvel Interno
a viso interna descrita atravs do esquema interno, o qual tem a responsabilidade de definir: - tipos de registros armazenados;
- os ndices existentes; - triggers necessrios; - sequncia fsica dos registros, etc.

Nvel Conceitual / Lgico


a viso conceitual a representao de todo o contedo de informaes do banco de dados, de modo abstrato quando comparado forma como os dados so fisicamente armazenados, e que tambm pode ser bem diferente da maneira como os dados so vistos por qualquer usurio em particular.
a viso conceitual a viso dos dados como realmente so e no como os usurios so forados a v-los. a viso conceitual definida pelo esquema conceitual, o qual no possui quaisquer consideraes sobre a estrutura de armazenamento ou a estratgia de acesso somente definio das informaes

Nvel Externo / Fsico


o nvel do usurio individual. Em termos ANSI/SPARC, a viso de um determinado usurio uma viso externa, ou seja, o contedo do banco de dados como visto por determinado usurio.
Ex: um usurio do Depto. Pessoal usurios finais com distintos graus de sofisticao cada usurio tem um linguagem a sua disposio. Ex: - Programador da aplicao: pode utilizar uma linguagem convencional como COBOL ou PL/I, ou uma linguagem do sistema em questo, PL/SQL, PGSQL, TRANSACT-SQL. -Usurio final: uma linguagem de consulta como SQL ou uma linguagem baseada em formulrios e menus. mapeamento externo/conceitual a correspondncia entre a viso externa e a conceitual. Como exemplo, podemos ter tipos de dados diferentes, denominaes de campos e registros modificadas, campos conceituais mltiplos podem ser combinados em um nico campo externo, etc.

Tipos de SGBD
Sistemas de Lista Invertida: Ex: DATACOM/DB (Aplied Data Research), ADABAS(Software AG), etc.
Sistemas Hierrquicos: Ex: IMS (1968, 1 verso depois virou IMS/VS Information Management System/Virtual Storage) (IBM), System 2000 (Intel); Sistemas em Rede: Ex: IDMS (Cullinet), DMS 1100 (Sperry), TOTAL (Cincom Systems) Sistemas Relacionais: aquele no qual os dados so percebidos pelos usurios como tabelas e as operaes para recuperao dos dados geram novas tabelas, a partir das originais. Ex: Oracle, DB2 (IBM), MySql (MySql AB), Firebird (Open Source), PostgreSQL (Open Source), SQL Server (Microsoft), Sybase Adaptative Server (Sybase), etc. Sistemas Orientados a Objetos: Os dados so armazenados como objetos. Ex: GemStone (GemStone Systems Inc.), Versant (Versant Object Technology), O2, Jasmine, etc. Sistemas Relacionais-Orientados a Objetos: tiram proveito de caractersticas dos sistemas relacionais e do sistema orientado a objeto. Ex: Oracle (a partir da verso 8i), PostgreSql.

Modelos de SGBD
Modelo relacional: utiliza-se de um conjunto de tabelas para representar tanto os dados como a
relao entre eles.

Modelos de SGBD
Modelo de rede: os dados so representados por um conjunto de registros (como em linguagens
de programao) e a relao entre os dados dada por links (ligaes ponteiros)

Modelos de SGBD
Modelo hierrquico: similar ao modelo de rede, a no ser pelo fato de os registros estarem
organizados em rvores.

Modelos de SGBD
Modelo dimensional: armazena os dados em arrays multidimensionais (cubos).

Papis humanos em SBD


As pessoas envolvidas num sistema de banco de dados podem ser divididas em usurio e administrador. A um usurio, cabe a tarefa de realizar operaes de manipulao de dados dum BD, enquanto que um administrador fica responsvel pelo controle o SBD.

Profissionais envolvidos

DBA (Administrador de Banco de Dados): Responsvel por autorizar o acesso, coordenar e monitorar seu uso, e por adquirir recursos de software e hardware. Avaliar o desempenho e problemas de segurana do sistema Projetista do BD: Responsvel por escolher as estruturas para representar e armazenar dados e vises

Usurio Final: podem integrar com o BD atravs de:


Aplicaes de BD: usurios leigos Linguagens de BD: usurios casuais a sofisticados

Analistas de Sistemas e programadores: Determinam as necessidades dos usurios finais e implementam as aplicaes.
Projetistas do SGBD: Projetam e implementam os mdulos e interfaces do SGBD, como um pacote.

Desenvolvedores de Ferramentas: Programas que facilitam o projeto e uso de um sistema de banco de dados, aprimorando seu desempenho.

Estrutura geral de um SGBD


Um Sistema Gerenciador de Banco de Dados um mdulo de programa que fornece a interface entre dados de baixo nvel armazenados num banco de dados e os programas aplicativos ou as solicitaes submetidas ao sistema. O SGBD o responsvel por todo o acesso aos dados armazenados. O papel da gerncia do BD, de forma conceitual, passa pelas etapas:

O usurio emite uma solicitao de acesso; O SGBD intercepta a solicitao e a analisa;

O SGBD inspeciona os esquemas externos (ou sub-esquemas) relacionados quele usurio, os mapeamentos entre os trs nveis e a definio da estrutura de armazenamento;
O SGBD realiza as operaes solicitadas no BD.

Principais Tarefas do SGBD

Interao com o sistema de arquivos do sistema operacional;


Cumprimento da integridade; Cumprimento da segurana; Cpias de segurana (backup) e recuperao; Controle da concorrncia.

Classificao do SGBD

Qual o objetivo da modelagem de dados ? Por que modelar ?

Representar o ambiente observado Documentar e normalizar Fornecer processos de validao Observar processos de relacionamentos entre objetos

Modelagem
Introduo:
Modelagem de sistemas, tanto a nvel funcional quanto de dados, um requisito fundamental para a obteno de produtos de software de maior qualidade e confiabilidade. Entretanto, percebe-se que cada vez menos profissionais tm dado a ateno devida ao processo de construo de modelos de suas aplicaes. Isso provavelmente se deve s presses por sistemas em prazos cada vez mais curtos e com menores custos de produo mas, por outro lado, acaba por prejudicar e muito o entendimento correto do problema e, consequentemente, a construo do sistema que atenda s reais expectativas do usurio. Esta situao muitas vezes leva a sistemas de baixa qualidade, com elevada necessidade de modificao e de difcil manuteno.

Entidade
Uma Entidade pode ser definida como qualquer coisa do mundo real , abstrata ou concreta , na qual se deseja guardar informaes. (Tabela , File, etc..).
Exemplos de entidades : Cliente , Produto , Contrato , Vendas , etc.

Atributo
Um atributo tudo o que se pode relacionar como propriedade da entidade. (coluna , campo , etc,..).
Exemplos de atributos: Cdigo do Produto (Entidade Produto) , Nome do Cliente (Entidade Cliente).

Tipos de Entidades

Forte: o tipo de entidade que existe por si mesma. Sua identificao completa feita pelos seus prprios atributos.
Fraca: a entidade cuja identificao no pode ser feita por seus prprios atributos. Para sua identificao completa precisamos de atributos de outra entidade.

Modelo Conceitual
1 - Modelo conceitual - Representa as regras de negcio sem limitaes tecnolgicas ou de implementao por isto a etapa mais adequada para o envolvimento do usurio que no precisa ter conhecimentos tcnicos. Neste modelo temos :

Viso Geral do negcio


Facilitao do entendimento entre usurios e desenvolvedores Possui somente as entidades e atributos principais Pode conter relacionamentos n para m
.

ModeloLgico
2 - Modelo Lgico - Leva em conta limites impostos por algum tipo de tecnologia de banco de dados. (banco de dados hierrquico , banco de dados relacional ,etc.). Suas caractersticas so :

Deriva do modelo conceitual e via a representao do negcio Possui entidades associativas em lugar de relacionamentos n:m Define as chaves primrias das entidades

Normalizao at a 3a. forma normal


Adequao ao padro de nomenclatura Entidades e atributos documentados

Modelo Fsico
3 - Modelo Fsico - Leva em considerao limites impostos pelo SGBD (Sistema Gerenciador de Banco de dados) e pelos requisitos no funcionais dos programas que acessam os dados. Caractersticas:

Elaborado a partir do modelo lgico Pode variar segundo o SGBD Pode ter tabelas fsicas (log , lider , etc.)

Pode ter colunas fsicas (replicao)

Fundamentos da Modelagem
Relacionamentos ainda podem ter atributos, quando algum dado precisa ser associado ligao das duas instncias envolvidas. Relacionamentos so descritos atravs da cardinalidade, que indica como as instncias das entidades se relacionam. Os tipos utilizados na modelagem so (KORTH, SILBERCHATZ e SUDARSHAN, 2006):

Um-para-um (1:1):
Um-para-muitos (1:n): Muitos-para-muitos (n:n):

Relacionamento entre entidades


o tipo de ocorrncia existente entre entidades. O smbolo que representa o relacionamento no modelo E-R um losango com o nome do relacionamento escrito no seu interior. Em um modelo de entidade e relacionamento, nem todas as entidades sero relacionadas, h casos em que no h relacionamento entre entidades, nestes casos consideramos como entidades isoladas.

Relacionamento um-para-um

O relacionamento um-para-um usado quando uma entidade A se relaciona com uma entidade B e vice-versa.
Este relacionamento representado pelo sinal: 1:1

Relacionamento um-para-muitos

O relacionamento um-para-muitos usado quando uma entidade A pode se relacionar com uma ou mais entidades B.
Este relacionamento representado pelo sinal: 1:N

Relacionamento muitos-para-muitos

O relacionamento muitos-para-muitos usado quando vrias entidades A se relacionam com vrias entidades B.
Este relacionamento representado pelo sinal: N:N ou N:M

Cardinalidade
A cardinalidade um conceito importante para ajudar a definir o relacionamento, ela define o nmero de ocorrncias em um relacionamento. Para determinar a cardinalidade, deve-se fazer a pergunta relativa ao relacionamento em ambas as direes. Um departamento possui quantos empregados? - no mnimo 1 e no mximo N. Um empregado est alocado em quantos departamentos? - no mnimo em 1 e no mximo em 1

Somando-se as cardinalidades, definimos o resultado final do relacionamento, ou seja, 1:N

Atividades

Identifique entidade(s) e atributo(s)

Identifique os atributos das entidades abaixo:


Entidade Livro para uma livraria online; Entidade Personagem para um jogo de luta estilo Street Fighter;

Entidade Time de Futebol para o sistema do G1 que exibe a tabela de classificao da Srie A do Brasileiro; Entidade Consulta para uma clnica de psicologia;
Entidade Aula para o curso tcnico do;

Entidade Conta para o banco do Brasil;

Identifique as entidades e seus atributos


ONG Bem Animal.!: Precisamos arrecadar dinheiro para comprar rao e realizar as campanhas de adoo no canil municipal, uma das aes que fazemos so rifas, porm, muitas pessoas no participam porque no conseguem entrar em contato conosco ou no tem tempo de fazer o depsito do valor. Pensamos em criar uma rifa on-line.

Cursos Tncicos: Lecionamos vrios cursos, cada qual tem um cdigo, um nome, e preo. Programao PHP e JavaScript so dois de nossos mais populares cursos. Murilo e Marcela so dois de nossos melhores instrutores, ns mantemos o nome e o telefone de cada um deles. Os estudantes podem frequentar vrios cursos ao mesmo tempo. Joo fez todos os cursos que fornecemos. Ns tambm mantemos nome, fone e endereo dos estudantes.

Locadora: Temos mais de 3000 fitas aqui e queremos um sistema para control-las Cada fita contem um nmero, ttulo e categoria (comdia, suspense, terror, etc.). Muitos de nosso filmes tem mais de uma fita. Frequentemente as pessoas alugam filmes pelos atores. Queremos manter informaes sobre os atores. Os clientes gostam de saber a data de nascimento de um ator, bem como o seu verdadeiro nome. Para cada cliente mantemos seu primeiro e ltimo nome, telefone e endereo. Claro que cada membro possui um numero de identificao. Alm disso mantemos o status de credito de cada um. Queremos controlar os alugueis de filmes. Um cliente pode alugar vrios filmes ao mesmo tempo. No controlamos o histrico de locaes.

Atividades

Descrever se os tipos de entidades como fortes ou fracas:


Empregado, Contador, Empacotador, Vendedor, Cliente, Nota Fiscal, Detalhes de Notas Fiscais (Relao de Produtos) e Produto.

Você também pode gostar