Escolar Documentos
Profissional Documentos
Cultura Documentos
Introduo
Automao das tarefas de tratamento da informao anterior ao computador; Na dcada de 60, as grande organizaes desenvolviam e mantinham aplicaes operacionais de suporte s vrias reas do negcio; No entanto, era praticamente impossvel fornecer informao de suporte deciso aos nveis tctico/estratgico (as aplicaes eram ilhas isoladas). Num ambiente competitivo existiam limitaes dos SI internos (implicaes fiscais e contabilsticas); Satisfao das necessidades dos consumidores - redefinio de novas medidas dos processos; Para integrar dados de suporte s vrias aplicaes e obter dados fiveis e sumariados para suportar a tomada de decises, surge o conceito de: SISTEMAS DE GESTO DE BASES DE DADOS Aumentar a produtividade do desenvolvimento e manuteno das aplicaes; disponibilizar meios de desenvolvimento de mais alto nvel; Permitir o acesso aos dados pelos utilizadores autorizados, atravs de ferramentas de alto nvel.
Nov 07
Rui Silva
Bases de Dados
Bases de Dados: contriburam, de forma decisiva, para a disseminao das TI em todos os sectores da sociedade, estando no corao de grande parte dos sistemas de software desenvolvidos. Factores que contriburam para o sucessos das BD:
maior produtividade segurana nos acessos controlo da concorrncia recuperao/tolerncia a falhas, etc.
Ritmo de crescimento assinalvel e percurso rpido e de grande sucesso (aliado ao hardware e s comunicaes).
Nov 07 Rui Silva
reas de Aplicao
rea tradicional de aplicao:
Processamento de dados de gesto (facturao, encomendas e vencimentos)
Nov 07
Rui Silva
Caractersticas da Informao I
Actualidade (valor) Dado o dinamismo da sociedade, o perodo de validade curto. necessrio acompanhar as modificaes. Informao actualizada = decises acertadas Correco. Rigor. S com informao correcta se pode decidir com confiana. Relevncia. Volume de informao dificulta a tomada de deciso. Filtrar a informao: s aquela que relevante que ser considerada.
Nov 07 Rui Silva
Caractersticas da Informao II
Disponibilidade. Disponibilizar de forma imediata, no momento em que solicitada. Decises muito ponderadas fazem parte do passado. Tomada de deciso tem de ser quase instantneo. Legibilidade. (last but not least) A informao s informao se puder ser interpretada ou entendida. Actualidade e correco: ateno aos dados! Relevncia, disponibilidade e legibilidade: dependem dos meios utilizados para o processamento dos dados (TI)
Nov 07 Rui Silva
Caractersticas de um Sistema
Bilogo alemo Ludwig Von Bertalanffy.
Os organismos vivos, mecnicos ou sociais tm caractersticas comuns, independentemente da sua natureza. Caracterstica mais importante: objectivo ou finalidade ou propsito.
Nov 07
Rui Silva
Sistemas
Um sistema pode ser subdividido em vrios sistemas os subsistemas. Computador um sistema. Objectivo: processar dados e armazenar informao. Subsistemas: teclado, UCP, monitor, etc. Entropia: tendncia para o desgaste e a desintegrao (aumenta com o decorrer do tempo) Homeostasia: equilbrio dinmico entre as partes, i.e. os sistemas tm uma tendncia para se adaptarem e alcanar equilbrio interno.
Nov 07 Rui Silva
necessrio que a informao seja clara, precisa, rpida e dirigida. A informao dever estar disponvel na organizao de uma forma facilmente utilizvel e compreensvel, disponvel em tempo til e obtida a um custo razovel. Sistemas informticos, nomeadamente sistemas de bases de dados tornam-se, assim, fundamentais.
Nov 07 Rui Silva
Planeamento e Desenvolvimento
Planeamento de SI a actividade de:
Identificao de polticas; Definio de objectivos; Construo de planos e oramentos em que sejam contemplados os objectivos de gesto da organizao e do SI.
Nov 07
Rui Silva
Testes e Implementao. Permite garantir que, antes de introduzir o novo sistema, o sistema satisfaz os objectivos. necessrio formar os diferentes utilizadores. Manuteno. Estabelecem-se os tipos de manuteno. Pode ser correctiva (responde a erros do sistema), perfectiva (melhora o sistema) e adaptativa (devido a alteraes no ambiente de negcio). Existem vrios mtodos, tcnicas e ferramentas disponveis que apoiam no desenvolvimento de SI. O desenvolvimento no uma actividade mecnica. No existem segredos mgicos para o sucesso, no existem ferramentas, tcnicas ou mtodos perfeitos. Whitten e Bentley (1998)
Nov 07
Rui Silva
Nov 07
Rui Silva
Consultar Dados
SELECT WINE, BIN, PRODUCER FROM CELLAR WHERE READY = 95; WINE Cab. Sauvignon Pinot Noir Merlot
Nov 07
BIN 43 51 58
Rui Silva
10
Por razes bvias, os ficheiros computorizados como o do exemplo so denominados tabelas (e no ficheiros). Na realidade, eles so tabelas relacionais. As linhas da tabela podem ser vistas como registos (lgicos). As colunas como campos. As operaes SELECT, INSERT, UPDATE e DELETE so, na realidade, exemplos de instrues de uma linguagem de bases de dados: o SQL.
Nov 07 Rui Silva
11
Nov 07
Rui Silva
Caractersticas de um SBD
O SGBD, sendo o mecanismo central coordenador de todo o sistema, responsvel por assegurar a gesto de:
Segurana Integridade dos dados Controlo da concorrncia Recuperao/Tolerncia a falhas Gesto do armazenamento e interface
Nov 07 Rui Silva
12
Segurana
Proteger os dados armazenados de acessos no autorizados e que os autorizados acedam de acordo com os seus privilgios. Segurana Fsica. Acesso ao sistema; mais problemtico com BD distribudas, uma vez que os pontos de acesso BD se encontram dispersos. Segurana Lgica. username e password e definir quem tem acesso, a qu, e como lhe pode aceder. Perfil de utilizador: vistas e regras de autorizao. Utilizadores autorizados no devem poder aceder a zonas proibidas. Medida de segurana mais radical: Encriptao de dados (codificar/descodificar) Deve-se escolher um nvel adequado ao valor confidencial dos dados a proteger Risco e custo das tentativas de acesso no autorizados devem ser superiores aos potenciais benefcios.
Nov 07
Rui Silva
Integridade
O SGBD deve verificar as restries de integridade para garantir que a BD contenha dados vlidos, minimizando a redundncia e maximizando a consistncia. Protege a BD contra acessos menos vlidos por parte de utilizadores autorizados. Existem restries de integridade intrnsecas ao SGBD (implcitas) e outras de definidas pelos utilizadores do sistema (explcitas). Apenas operaes de actualizao podem pr em causa a integridade (as de consulta no). Gesto de transaces evita inconsistncia. Um funcionrio no pode pertencer a mais do que um departamento; Um estudante s pode inscrever-se em disciplinas do seu curso; A referncia de cada produto deve ser nica; O peso de cada lote dever ser maior que 100Kg; O salrio de um funcionrio deve ser superior ou igual ao salrio mnimo nacional (restrio esttica); O salrio de um funcionrio nunca poder decrescer, s aumentar (restrio dinmica)
Nov 07
Rui Silva
13
Controlo da Concorrncia
Partilha de dados (SBD multiutilizador) Transaco: a unidade de controlo da concorrncia. Existem dois tipos:
Execuo srie Execuo concorrente (permite maximizar a utilizao do sistema aquando de operaes de leitura/escrita). A execuo de transaces em concorrncia deve manter a integridade da BD, i.e., o resultado final deve ser o mesmo do que em execuo srie.
Nov 07 Rui Silva
Programador
Implementam as funcionalidades, testam, corrigem erros, documentam e mantm os programas escritos.
Utilizadores Finais
So a razo de existir da BD. Acedem ao sistema para consultar, alterar, adicionar ou remover dados. No podem alterar a estrutura da BD (nvel conceptual).
Nov 07
Rui Silva
14
Independncia de dados
Independncia lgica Independncia fsica
Nov 07 Rui Silva
Nveis de Abstraco
Nvel interno
Nvel mais baixo de abstraco Esquema interno descreve armazenamento fsico dos dados (so descritas estruturas de baixo nvel)
Nvel conceptual
Quais os dados que esto armazenados e suas relaes
Nvel externo
Nvel mais elevado. Inclui as vistas do utilizador que mostram apenas uma parte da base de dados.
Nov 07 Rui Silva
15
Independncia de Dados
Independncia lgica
Capacidade de alterar o esquema conceptual sem ter de alterar os esquemas externos. Expanso/Reduo da BD ser afectados. Esquemas externos no devem
Independncia fsica
Capacidade de alterar o esquema interno sem alterar o esquema conceptual. Melhorar o desempenho do sistema. Mais fcil de conseguir do que a independncia lgica
Nov 07
Rui Silva
16
Tipos de Linguagens de BD
Linguagem de Definio de Dados (LDD) ou Data Definition Language (DDL) a linguagem que descreve a estrutura dos dados a armazenar quando a BD criada ou modificada, i.e., a linguagem de definio dos metadados. SQL: create database, create table, alter table, drop table, create index, drop index Linguagem de Manipulao de Dados (LMD) ou Data Manipulation Language (DML) Operaes de manipulao dos dados: insero, remoo, alterao e consulta de dados. Questes executadas interactivamente (ad-hoc) versus embutidas numa linguagem para o desenvolvimento de aplicaes. Linguagem de Controlo de Dados (LCD) ou Data Control Language (DCL) Inclui os comandos responsveis pela segurana da Base de Dados SQL: create user, alter user, drop user, grant e revoke
Nov 07
Rui Silva
Nov 07
Rui Silva
17
3 Gerao: Estado actual de desenvolvimento da tecnologia de BD: modelos no estabilizados. Geraes tambm designadas por: pr-relacional, relacional, ps-relacional.
Nov 07 Rui Silva
18
Modelo Hierrquico
1 Modelo de BD reconhecido como tal. Resulta de um processo evolutivos sobre as tcnicas de processamento utilizadas nos SG Ficheiros. Estruturas: registos e relacionamentos pai-filhos. Registos relacionados atravs de uma estrutura hierrquica do tipo pai-filho, com vrios nveis. Um relacionamento pai-filho um relacionamento de 1:M (um para muitos) Registo Raiz. Acesso feito a partir da raiz da esquerda para a direita e de cima para baixo (depth-first-order).
Nov 07 Rui Silva
Problemas:
Dificuldade de representao do relacionamento M:N S possvel inserir um filho se houver um pai Para aceder a um filho necessrio encontrar um pai A eliminao de um registo elimina todos os filhos Redundncia de dados Programao exigente
19
Modelo Rede
uma extenso do modelo hierrquico Elimina o conceito de hierarquia, permitindo que um mesmo registo esteja em vrias associaes. Modelo hierrquico: registos organizados em conjuntos de rvores; Modelo Rede: registos organizados em grafos. Tambm conhecido por modelo CODASYL (COnference on DAta SYstems and Languages) Sucesso inferior ao do modelo hierrquico. Existe apenas um tipo de associao: o set. Um set define um relacionamento 1:M entre registos
O registo pai chama-se owner e o registo filho member.
Possibilita a representao de relacionamentos de M:N (lse muitos para muitos) e o acesso aos dados mais flexvel. Sistema muito complexo, grande esforo na manuteno.
Nov 07 Rui Silva
Nov 07
Rui Silva
20
Integridade e Navegao
Restries de integridade implcitas
Um set dever ter um owner e zero ou mais member No mesmo set um registo s pode aparecer uma vez como owner ou member Um registo no pode ser simultaneamente owner e member do mesmo set
Modelo Relacional
Apresentado por E. F. Codd em 1970: A relational model of data for large shared data banks. Fruto do desenvolvimento terico, tendo por base a teoria dos conjuntos (e no a partir de tcnicas de processamento de ficheiros). Estrutura bsica: tabela (ou relao). Uma BD relacional formada por um conjunto de tabelas relacionadas (atravs de um atributo comum) A tabela uma estrutura lgica que fornece independncia de dados e funcional.
Nov 07
Rui Silva
21
Outra vantagem
Facilidade para responder a questes ad-hoc (SQL)
Desvantagens
Exigente a nvel de hardware e do SO, devido sua complexidade (tem vindo a ser ultrapassado com a crescente capacidade dos computadores). Uma vez que as tabelas so universalmente compreendidas, acontece que o desenho dos sistemas no tem em conta as estruturas necessrias, gerando problemas semelhantes aos dos sistemas de ficheiros (redundncia de dados, impossibilidade de representar determinada informao, perda de informao, ...).
Nov 07
Rui Silva
Nov 07
Rui Silva
22
Apareceram, assim, modelos OO (com origem nas linguagens de programao OO) e extenses ao modelo relacional (com caractersticas OO)
Nov 07
Rui Silva
Definio de Termos OO
Objecto: representao conceptual de uma entidade. Atributos: propriedades que descrevem o objecto. Mtodos: aces associadas ao seu comportamento. Encapsulamento: um objecto contm quer a estrutura de dados quer o conjunto de operaes que podemos definir. Classe: coleco de objectos que partilham a estrutura e comportamento. Mensagem: forma como os objectos comunicam entre si. Herana: objectos podem herdar os atributos/mtodos de uma super-classe (existe herana simples e mltipla). Polimorfismo: a mesma mensagem enviada a objectos diferentes origina respostas diferentes (a correcta).
Nov 07
Rui Silva
23
SGBD OO
Resulta da combinao das caractersticas
tradicionais de um SGBD (gesto do armazenamento, segurana, integridade, etc.) de sistemas OO (herana, polimorfismo e encapsulamento, etc.)
Nov 07
Rui Silva
24
Visualizao de Stonebrakers
difcil categorizar muitas aplicaes de BD num dos quadrantes
O Modelo Relacional de BD
Apresentado por Codd, em 1970. actualmente o modelo mais popular
Grande simplicidade Grande capacidade de resposta s necessidades dos utilizadores
A sua implementao foi difcil e rodeada de cepticismo. Foi um sucesso devido sua forte base terica
Codd possua forte formao em matemtica Baseou-se na teoria matemtica dos conjuntos e de lgica de predicados para a concepo do modelo.
Nov 07
Rui Silva
25
Terminologia Bsica I
Relao: estrutura lgica representada por uma tabela com linhas e colunas. Atributo: coluna qual atribudo um nome. Tuplo: linha de uma relao. A ordem dos tuplos no importante (se alterarmos a sua ordem, mantemos a mesma relao e significado). Grau de uma relao = n de atributos da relao. Cardinalidade: n de tuplos da relao. Domnio: definido para cada atributo de uma relao.
Nov 07
Rui Silva
Terminologia Bsica II
Grau: geralmente fixo, a no ser que o significado da relao seja intencionalmente alterado. Cardinalidade: muda frequentemente (adio/remoo de tuplos) Domnio: gama de valores possveis para cada atributo (evitam operaes incorrectas). Base de dados relacional consiste num conjunto de relaes apropriadamente estruturadas (normalizadas)
Nov 07
Rui Silva
26
Nov 07
Rui Silva
Conceito de Chave
Super-chave: um ou mais atributos que identificam univocamente um tuplo numa relao Chave candidata: idem mas sem atributos desnecessrios para a identificao. uma super-chave tal que nenhum subconjunto dessa super-chave uma super-chave (pode ser composta). Chave primria (ou principal): seleccionada de entre as vrias chaves candidatas. Chave estrangeira (ou importada): um ou mais atributos que chave primria numa outra relao.
Nov 07 Rui Silva
27
Regras de Integridade
Integridade de Domnio
Forma mais elementar de restrio de integridade Garantidas pelo SGBD: gama de valores, obedincia a padres, questes com sentido, etc.
Integridade da Entidade
Identificao inequvoca de cada tuplo. Nenhum atributo da chave primria pode ser nulo ou conter partes nulas, no caso de chave composta.
Integridade Referencial
Valor de uma chave estrangeira ou null ou contm um valor que chave primria noutra relao.
Nov 07 Rui Silva
As Regras de Codd
Vrios sistemas de gesto de BD dizem-se relacionais sendo, na realidade, adaptaes do modelo hierrquico e em rede (modelos evoludos com algumas caractersticas do modelo relacional). Apresentadas em 1985, causaram grande controvrsia. Regras a que um SGBD deve obedecer para que possa ser considerado como relacional. Exemplos: Acesso garantido, tratamento de nulos, sublinguagem de dados completa, independncia fsica, lgica e de integridade, entre outras.
Nov 07 Rui Silva
28
Nov 07
Rui Silva
Modelao de Dados
Para estudar ou analisar um sistema, utilizam-se modelos. Um modelo uma representao de um sistema (Chiavenato) Modelo: imagem ou desenho que representa o objecto que se pretende reproduzir (Porto Editora). Sendo uma representao da realidade, um modelo ser sempre imperfeito ou incompleto. Desenho de uma Base de Dados: cincia e arte. Existem ferramentas poderosas de auxlio
Modelo Entidade-Relacionamento (E-R)
Nov 07
Rui Silva
29
Importncia da Modelao
Modelao de dados: contribui para a organizao e documentao de dados de um sistema.
crucial para um bom desempenho do sistema. Fundamental para a transformao dos dados em informao; vital para a empresa. Os dados, sendo partilhados por diversos sectores, devem ser flexveis de modo a que se possam adaptar para responder s necessidades: objectivo da Modelao de Dados. Os analistas podem comunicar com os utilizadores.
Modelo de dados passa por um processo de abstraco (i.e., identificao dos aspectos importantes).
Nov 07
Rui Silva
Desenho de Base de Dados: concentrar nas entidades ou objectos e nas suas caractersticas e relaes. Modelo de dados est para um sistema assim como uma planta est para uma casa. Bom modelo: deve ser simples, no redundante, flexvel e adaptvel a necessidades futuras. Modelo E-R: simultaneamente simples e poderoso
Eficaz para o desenho da maioria dos sistemas de BD Com limitaes para sistemas mais complexos.
Nov 07
Rui Silva
30
Modelo Entidade-Relacionamento
Desenvolvido por Peter Chen, 1976 The Entity- Relationship Model toward a unified view of data. um modelo de dados conceptual (permite obter uma descrio lgica do sistema), com um elevado nvel de abstraco. Permite que diferentes perspectivas dos dados (gestores, utilizadores e analistas) se aproximem, formando uma estrutura comum. Consiste na identificao das entidades, suas propriedades (ou atributos) e dos relacionamentos entre as entidades num Diagrama E-R.
Nov 07
Rui Silva
Entidades e Atributos
Entidades: conjunto de pessoas, lugares, objectos, acontecimentos ou conceitos, sobre o qual pretendemos guardar dados. Exemplo. Clnica dentria:
Dente conjunto de todos os dentes. Tratamento geral conjunto de todos os trat. gerais. Dentista conjunto de todos os dentistas. Paciente conjunto de todos os paciente. ...
31
Exemplos de Entidades
Instncia ou ocorrncia: elemento de um conjunto.
Molar ou canino so instncias da entidade dente.
Atributos
Cada atributo tem um domnio = conjunto de valores possveis do atributo. Os atributos podem partilhar domnios.
Morada de um paciente e morada de um dentista so atributos com o mesmo domnio.
Representa-se por uma elipse contendo o nome do atributo e ligada entidade correspondente. Pode ser simples ou composto.
Simples: no pode ser subdividido. Composto: pode ser subdividido.
Nov 07
Rui Silva
32
Atributo:
Pode ter um s valor ou vrios valores. Exemplo: telefone. Representa-se atravs de uma elipse com linha dupla.
Nov 07
Rui Silva
Nov 07
Rui Silva
33
Relacionamentos
Definio: uma associao til entre duas entidades (conjunto de ligaes entre entidades). -lhe atribudo um nome que descreve a sua funo. Representa-se por um losango. Exemplo:
Paciente tem dente. Dentista faz ao paciente tratamento geral.
Entidades envolvidas no relacionamento chamam-se participantes nesse relacionamento. Grau: n. de participantes num relacionamento.
Nov 07 Rui Silva
Relacionamentos de Grau 2 e 3
Relacionamento binrio: grau 2.
_
Nov 07 Rui Silva
34
Cardinalidade
Definio: nmero de instncias de uma entidade, associadas com uma ocorrncia das entidades que com ela se relacionam. Pode ser de trs tipos:
Um para um (1:1) Um para muitos (1:M) Muitos para muitos (M:N)
Nov 07 Rui Silva
Participao
A participao de uma ocorrncia de uma entidade num relacionamento opcional ou obrigatria. Indica-se a participao opcional colocando um crculo junto da entidade cuja participao opcional
Nov 07
Rui Silva
35