aula 1 - bade dados ii-2015

Upload: cherno-macuvele

Post on 22-Feb-2018

217 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    1/29

    Base de Dados II-OZ@ APolitecnica-2015

    Base de Dados II

    Aula 1

    Orlando Zacarias

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    2/29

    Motivao e Revisando

    Uma base de dados uma coleco de dadosrelacionados que pode ser armazenada sob algumaforma fsica

    Os dados armazenados em uma base de dadosrepresentam algum aspecto especfico do mundo real

    um universo de discurso de onde os dados so obtidose apresentam algum grau de coerncia lgica entre seuscomponentes

    Uma coleco aleatria de dados no constitui umabase de dados

    Um sistema de gesto de base de dados o softwareque permite criar, manter e manipular bases de dadospara diversas aplicaes. O sistema de gesto de basede dados pode ser de propsito geral ou especfico paraalguma aplicao

    Base de Dados II-OZ@ APolitecnica-2015

    2

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    3/29

    Cont.

    Um sistema de base de dados constitudo por uma

    base de dados e por um sistema de gesto de base dedados

    A necessidade de utilizao de um sistema de base dedados para suportar a armazenagem da informao deuma aplicaoprincipalmente a independncia da

    aplicao com relao estrutura interna dearmazenagem e a possibilidade de compartilhar dadosentre aplicaespassaram a ser desejadas em outrasclasses de aplicaes, tais como projectos deengenharia (CAD/CAEComputer Aided Design,

    Computer Aided Engineering), automao industrial ede escritrios (CAMComputer Aided Manufacturing,OAOffice Automation), sistemas especialistas desuporte tomada de decises (DSSDecision SupportSystems) e sistemas de suporte ao trabalho cooperativo

    (CSCWComputer Supported Cooperative Work)Base de Dados II-OZ@ APolitecnica-2015

    3

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    4/29

    Cont.

    Estas aplicaes no convencionais impem requisitosao sistema de base de dados que no estavampresentes nas aplicaes tradicionais, tais como lidarcom maiores volumes de dados, a necessidade demanipulao de dados em formatos no-alfanumricos;incluindo informao multimdia e o tratamento deesquemas evolutivos e dinmicos

    Os requisitos impostos por estas categorias de aplicaesconstituem a maior motivao para o surgimento denovas abordagens de gestao de dados

    neste sentido que a integrao do paradigma deorientao a objectos ao sistemas de base de dados temsurgido como a tendncia mais promissora em termos degestao de dados para as mais diversas categorias deaplicaes

    Base de Dados II-OZ@ APolitecnica-2015

    4

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    5/29

    Sistema de Gesto de Base Dados OO(SGBDOO)

    Desenvolvimento Fruto da combinao de ideias dos modelos de dados

    tradicionais e de linguagens de programao orientadaa objectos

    A importancia do modelo de dados orientado a objectosdeve-se a: Serem adequados para o tratamento de objectos

    complexos (textos, grficos, imagens)

    Serem dinmicos (programas, simulaes)

    Possuirem maior naturalidade conceptual Estarem em consonncia com fortes tendncias em

    linguagens de programao e engenharia de software

    Consequencia: casamento entre as ling. de progr. e basede dados de forma mais adequada tratado no

    contexto de orientao a objectosBase de Dados II-OZ@ APolitecnica-2015

    5

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    6/29

    Cont.

    SGBDOO combinam conceitos de objectocom capacidade das bases de dados tendoo potencial de fornecer poderososrepositrios para aplicaes avanadas debases de dados

    Dividem-se em tres niveis

    Logico

    Interno

    Externo

    Base de Dados II-OZ@ APolitecnica-2015

    6

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    7/29

    Cont.

    Nivel LgicoUsa-se a noo de objecto

    Possui caracteristicas no encontradas naslinguagens de programao tradicionais:Operadores de manipulao de estruturas

    Gesto de armazenamentos

    Tratamento de integridade

    Persistncia dos dados

    Base de Dados II-OZ@ APolitecnica-2015

    7

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    8/29

    Definio de SGBDOO

    Sistemas de Gesto de Base de Dados Orientados aObjectos (SGBDOO) podem ser definidos como umabase de dados capaz de armazenar alm de dados,como nos Sistemas de Arquivos e estruturas de dadosnas Bases de Dados Relacionais, outros tipos diferentes

    de dados que no podem ser convertidos somente emarquivos lineares ou bidimensionais como tabelas, e simum tipo especial de objecto

    A principal caracterstica de SGBDOO modelar

    estruturas complexas armazenando no somente naestrutura de dados, mas tambm seu comportamento.Assim que, tem-se a necessidade de Bases de DadosOrientados a Objectos

    SGBDOO esto em continuo desenvolvimento ...

    Base de Dados II-OZ@ APolitecnica-2015

    8

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    9/29

    Outros Conceitos

    Duas propriedades fundamentais para aconstruo de um SGBDOO: extensibilidade e completude computacional

    A primeira garante que o conjunto de tiposoferecidos pelo sistema permita a definio denovos tipos e no h distino entre os tipospr-definidos e os definidos pelo usurio

    A segunda implica que a linguagem demanipulao de uma base de dadosorientado a objectos possa exprimir qualquerfuno computacional

    Base de Dados II-OZ@ APolitecnica-2015

    9

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    10/29

    Vantagens de SGBDOO

    Aplicaes Internet so particularmente adequadaspara bases de dados de orientadas a objectos, pois quea maioria das aplicaes so desenvolvidas em Java,que uma linguagem orientada a objecto

    SGBDOO ideal para as aplicaes mais populares

    O crescimento da Internet, videogames, aplicaespara multimdia e o desenvolvimento de bases dedados distribudos que no se adequam ao modelo

    relacional esto trazendo o foco para SGBDOO, sendomenos complexo do ponto de vista do desenvolvimentoe utilizao

    Segue os princpios das actuais linguagens deprogramao

    Base de Dados II-OZ@ APolitecnica-2015

    10

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    11/29

    Desvantagens de SGBDOO

    SGBDOO no tem uma base terica forte como basesde dados hierrquicos baseado na metodologia de"rvore e relacional baseado em "matemtica dosconjuntos". Porm, nem tudo que no tem muita baseterica intil, como o clculo numrico que utilizado

    at hoje....... .

    Escassos recursos graficos para desenvolvimento

    Instvel com relao a direcionamento de suasaplicaes, j que tudo se resume em objectos

    linguagens para consultas de objectos so difceis,pouco padronizadas e uma relativa fraca explorao

    Base de Dados II-OZ@ APolitecnica-2015

    11

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    12/29

    Aplicaes de SGBDOO e Nota Conclusiva

    Consideradas como SGBD de "prxima gerao" paraaplicaes avanadas

    Bases de dados orientados a objectos estoamadurecendo graas ao explosivo crescimento da

    Internet e da multimdia

    O modelo de base de dados de objectos e o modelorelacional coexistem porque so projetados paraaplicaes diferentes; i.e., no se deve adaptar osdados a base de dados, mas sim escolher o tipo debase de dados e o produto com base no tipo dosdados e na forma como os usurios finais os acessaro,pois no existe at o presente momento um SGBDcompatvel para aplicaes diversificadas

    Base de Dados II-OZ@ APolitecnica-2015

    12

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    13/29

    Aspectos de Implementao

    Ja sabemos que Object Database/Base de Dados deObjectos constituida por objectos em vez de relaes,tabelas ou outras estruturas

    O que sera um Objecto?

    Milhes de anos de evoluo criaram mecanismos emnossas mentes que nos permite isolar objectos em nosso

    ambiente, para nome-los e atribuir-lhes algumaspropriedades e comportamentos

    Orientacao-objectos em ciencias computacionaisbaseia-se em mecanismos inatos/internos de nossasmentes

    Base de Dados II-OZ@ APolitecnica-2015

    13

    Objecto um tipo idiomatico ou metafora que procurarelacionar a forma como os humanos percebem o mundo realou coisas da vida real

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    14/29

    Cont.

    Os problemas de criao de software Custos elevados de desenho de software: desenvolvimento eimplantao

    O problema de obsolencia de software

    Riscos elevados de projectos falhados (sem sucesso)

    Metodos de desenho e construo de software imaturos

    Pouca confiabilidade problemas com a seguran Integrao distribuda, heterogneo e redundante e fragmentada

    de dados

    Custos altos de manuteno de software

    O principal factor dos problemas de software:Complexidade

    Orientao a objectos representa nova esperana naluta contra a complexidade

    Base de Dados II-OZ@ APolitecnica-2015

    14

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    15/29

    Factores de Complexidade de Software

    The world of analysis and design:teams of people having limitations of

    memory, perception, expressing

    information and communication.

    The world of analysis and design:teams of people having limitations of

    memory, perception, expressing

    information and communication.

    The world of the problem domain:comprising complex, interdependent

    knowledge, aspects and problems.

    The world of the problem domain:comprising complex, interdependent

    knowledge, aspects and problems.

    The world of computer

    artifacts and technologies:hardware, software, networks,

    languages, tools, facilities.

    The world of computer

    artifacts and technologies:hardware, software, networks,

    languages, tools, facilities.

    Software:

    strategic decisions,analysis, design,

    construction,

    documentation,

    deployment,

    education, use,

    maintenance,

    modifications.

    The world of software users:psychological factors, ergonomy,

    limitations of memory and

    perception, tendency to errors and

    abuse, privacy, security, ...

    The world of software users:psychological factors, ergonomy,

    limitations of memory and

    perception, tendency to errors and

    abuse, privacy, security, ...

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    16/29

    Modelo Conceptual de Software

    Processes of the software constructions are performed in our minds.

    People must clearly imagine the problem before solving it.

    Software analysis and design tools are nowadays object-oriented as a

    rule, c.f. UML.

    Object-orientation reduces the complexity of the mappings:

    - between the human perception of the problem domain and an abstract model

    - between the abstract object-oriented model and databases object databases

    Humanperception of the

    problem domain

    Abstract conceptualmodel of the

    problem domain

    Programmers view ofdata structures and

    operations

    .........

    ...... .................. .................. ...

    mappingmapping

    *

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    17/29

    Porque Bases Dados Relacionais eObjecto-Relacionais no so Suficientes

    Base de dados relacionais so mais populares: Poucoprovavel que percam sua dominio

    No entanto, bases de dados relacionais implicam

    incompatibilidade de impedncia grave entre desenhoorientado a objectos e estruturas de dados relacionais

    impedance mismatch: Incompatibilidade entre aplicacoes e DBMS

    Aplicacoes criam estrutura de dados complexas

    Aplicacao pretende acede-las duma forma especifica

    Incompatibilidade aumenta se app for OO

    O mapeamento difcil, o custo de produo desoftware mais elevada

    Desempenho frequentemente comprometida, custo de

    manuteno muito altoBase de Dados II-OZ@ APolitecnica-2015

    17

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    18/29

    Cont.

    Modelo relacional e OO saofundamentalmente diferentes e integracao dosdois nao facil

    Onda objecto-relacional decepcionante:Quase ningum usa extenses orientadas a objecto

    de sistemas relacionais

    Eles no so suportados por padres, ferramentas eAPIs

    Novos padres SQL, visando o modelo objecto-relacional so mal sucedidos

    Base de Dados II-OZ@ APolitecnica-2015

    18

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    19/29

    Capacidades Gerais de Base Dados OO

    Capacidades Tradicionais Gesto do armazenamento secundario

    Controlo e processsos concorrentes

    Gesto de transacoes e sua recuperao

    Processamento de consultas Autorizao de acesso e controle,

    segurana

    Base de Dados II-OZ@ APolitecnica-2015

    19

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    20/29

    Cont.

    Novas Capacidades Objectos complexos

    Identidades de objectos

    Tipos definidos pelo usurio

    Encapsulation Tipo de hierarquia / classe com herana

    Sobrecarga, substituio ligao tardia,polimorfismo

    Completude computacional epragmtica de interfaces dosprogramadores

    Base de Dados II-OZ@ APolitecnica-2015

    20

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    21/29

    Conceitos de Base de Dados OO

    Objectos complexos, aidentidade do objecto: Os objectos tm complexidade

    arbitrria Cada objecto tem identidade, ouseja, um nico identificadorinterno (OID)

    Cada objecto tem um ou maisnomes externos

    Base de Dados II-OZ@ APolitecnica-2015

    21

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    22/29

    Cont.

    Relacionamentos, associaes,ligaes:

    Os objectos so ligados por elos

    conceptuais. Por exemplo, osobjectos Employee e Departmentpodem ser conectados por umlink worksFor = TrabalhaPara

    Base de Dados II-OZ@ APolitecnica-2015

    22

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    23/29

    Cont.

    Encapsulamento e ocultamentode informaes:

    As propriedades internas de um

    objecto so subdivididos emduas partes: pblico e privado(invisvel a partir do exterior)

    Base de Dados II-OZ@ APolitecnica-2015

    23

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    24/29

    Cont.

    Classes, tipos, interfaces:

    Cada objecto uma instncia deuma ou mais classes

    Os objectos so instanciado deacordo com a informaoapresentada na classe

    A classe contm as propriedadesque so comuns para algumacoleco de objectos

    Cada objecto tem um tipo

    Objectos so acessveis atravsde suas interfaces

    Base de Dados II-OZ@ APolitecnica-2015

    24

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    25/29

    Cont.

    Tipos de dados abstratos (ADTs): Um tipo de uma classe,o que pressupe que qualquer acesso a um objecto limitado coleco predefinida de operaes

    Operaes, mtodos e mensagens:Um objecto

    associado com um conjunto de operaes (mtodos).O objecto executa a operao aps receber umamensagem com o nome da operao a ser realizada(e seus parmetros)

    Herana: As aulas so organizadas em uma hierarquiaque reflecte a hierarquia de conceitos do mundo real.Por exemplo, a classe Person uma superclasse dasclasses Empregado e Estudante

    Base de Dados II-OZ@ APolitecnica-2015

    25

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    26/29

    Cont.

    Polimorfismo, ligao tardia, imperiosa:A operao a ser executada sobre umobjecto escolhido de formadinmica, aps o objecto receber a

    mensagem com o nome da operao

    Persistncia: Objectos da base dedados so persistentes, ou seja, devem

    viver tanto tempo quanto necessrio.Eles podem sobreviver a programas,que os criou

    Base de Dados II-OZ@ APolitecnica-2015

    26

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    27/29

    Arquitectura de OO DBMS

    Executable

    program

    Transaction

    processing,

    log management,

    rollback,

    recovery,

    authorization,

    security

    Data/Objects

    Views

    Rules

    Query

    optimization

    and processing

    Database resources

    Indices Catalogs

    4GL/RAD environment

    Source program

    in 4GL/RAD

    Processor

    of ad hoc

    queries

    Facilities

    Preprocessor

    Compiler

    Source program

    in C++, Java, etc.

    Object code

    modules

    Linker

    Class library, run-

    time modules of

    the prog. lang.

    Class library, run-

    time modules of

    OODBMS

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    28/29

    Modelo de Aplicacao Tradicional e OO

    The traditional structure

    of an application

    ... ... ...... ... ...

    ... ... ...... ... ...

    ... ... ...... ... ...

    Types

    Procedure and

    function librariesApplication

    modules

    Dictionaries,

    catalogsDatabase procedures,

    views, rules

    Possive data

    (relations)

    Linked objects

    Classes and types

    ......

    ...

    ...

    ...

    ...

    .........

    ...

    ...

    ......

    ......

    The object-oriented structure

    of an application

    ...

    Applicationmodules

    Dictionaries,

    catalogsDatabase procedures,

    views, rules

    Database

    schema

    Database

    schema

    Procedure andfunction libraries

  • 7/24/2019 Aula 1 - Bade Dados II-2015

    29/29

    Conclusao

    Base de dados OO tem larga aplicacao nomercado

    Nao obstante suas rivais Objecto-Relacionais,tem entretanto muito sucesso em diversas

    areas da vida pratica

    Modelo relacional perdeu ja seu papel de liderna area de base de dados

    Integracao com linguagens OO tem muitaaceitacao

    Base de Dados II-OZ@ APolitecnica- 29