Bancos de Dados Orientados a Objeto

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    Favorites, Groups & Events

    Bancos de Dados Orientados a Objeto - Presentation Transcript

    1. Bancos de Dados Orientados a Objeto Estudo de Casos Kelly Prudente Pereira Luciano Soares Bohnert Orientador: Fernando Albuquerque
    2. Objetivos do Projeto
      • Estudar a evolu ção na área de Bancos de Dados até o paradigma da Orientação a Objetos.
      • Avaliar o porque de Bancos de dados Orientados a Objetos.
      • Analisar duas opções disponíveis no mercado:
        • Jasmine
        • Poet
      • Implementar um sistema exemplo utilizado um banco de dados Orientado a Objetos (Jasmine).
    3. Introdução
      • Um Histórico da Evolução dos Modelos de Dados
        • Como tudo aconteceu após os anos 60
        • Modelo Hierárquico
          • Novas vantagens
          • Novos Problemas
        • Modelos de Rede
          • IDS (Integrated Data Store)
          • Rede Simples
          • Rede Complexa
    4. Introdução
        • Modelo Relacional
          • Tabelas bidimensionais.
          • ad hoc queries
        • Modelo Orientado a Objeto
          • Armazenamento de objetos persistentes.
          • Armazenamento de dados complexos.
          • Categorias de Produtos
            • ODBMSs puros
            • Gerenciadores de Armazenamento Persistente
            • Object Wrappers
            • DBMSs híbridos ou post-relacional ou ORDBMS
    5. Orientação a Objetos e o Modelo de Dados Orientado a Objetos
      • Elementos da Orientação a Objetos
        • Objetos
          • Classes
          • Tipos de método
          • Sobrecarga
    6. A Orientação a Objetos
        • Herança
    7. A Orientação a Objetos
        • Herança múltipla
        • Interface
        • Polimorfismo
    8. O modelo de Dados Orientado a Objeto
      • Relacionamentos entre os dados
        • Identificadores de Objetos
        • Gerenciamento de memória
        • Relacionamento Um-Muitos
        • Relacionamento Muitos-Muitos
        • Relacionamento “É um (a)”
        • Relacionamento Extends
        • Relacionamento Todo-Parte
    9. O modelo de Dados Orientado a Objeto
      • Integridade de Relacionamento
      • Diagramas de relacionamentos
      • A UML (Unified Modeling Language)
      Para a Classe País : Para a Classe Estado : Estados : (set) Estado inverse is Estado.País Pais : pais inverse is País.Estado
    10. Porque ODBMS: Comparando RDBMS e ODBMS
      • Bancos Relacionais e Linguagens Orientadas a Objeto
        • Vantagens do Relacional:
          • Capacidade
          • Velocidade
          • Eficiência
      • SQL (Joins)
    11. O Modelo de Relacional
      • Bidimensional
      • Chaves para manter os relacionamentos
    12. O Modelo de Objeto
      • Combina:
        • Código
        • Dados
      • Características:
        • Herança
        • Encapsulamento
        • Polimorfismo
      • OID
    13. Combinando os modelos
      • Esquema de definição no Banco de Dados para Objetos
        • Mapear objetos em RDBMS(programação extra)
        • Mapear RDBMS em objetos (poucos tipos, não tem suporte a características OO)
      • Camadas de persistência.
    14. Manipulação de Dados para Objetos
      • Gereciamento de objetos em memória
      • Exclusão de todas as tabelas
      • Consulta em todas as tabelas
      • Limitação destas soluções
        • Dois Modelos
    15. Bancos da Dados Orientados a Objeto
      • Suporte a Objetos
      • Operações Básicas no Banco de Dados
        • Banco “conhece” o esquema real
        • Não há perigo de dois objetos estarem carregados em memória
    16. Padronizações
      • ODMG ( Object Database Management Group )
      • A proposta padrão ODMG
        • Terminologia básica
        • Tipos: Especificações e implementações
          • Tipos primitivos
    17. Padronizações
        • Herança
          • Herança e interfaces
          • Extends
      interface Empregado {....}; interface Professor : Empregado {....}; interface Professor_Substituto : Professor {....}; interface Professor_Auxiliar : Professor {....};
    18. Padronizações
        • Objetos
          • Identifcadores
          • Nomes
          • Persistentes e transientes
          • Objetos atômicos
          • Coleções
          • Objetos Estruturados
        • Modelando estados – Propriedades
          • Atributos
          • Relacionamentos
    19. Padronizações
        • Modelando comportamentos – Métodos
        • Locking e controle de concorrência
        • Modelo de transação
          • Transação e Processos
          • Operações Tradicionais
      interface Transaction { void begin() raises(TransactionlnProgress,DatabaseClosed); void commit() raises(TransactionNotlnProgress); void abort() raises(TransactionNotlriFrogress); void checkpoint() raises(TransactionNotlnProgress); void join() raises(TrarisactionNotlnProgress); void Leave() raises(TransactionNotlnProgress); boolean isOpen(): }
    20. Padronizações
        • Operações no Banco
          • Open()
          • Close()
          • Bind()
          • Unbind()
          • Lookup()
    21. ODL
      • ODL( Object Definition Language )
        • Estrutura de classes e interfaces
        • Declarando atributos
        • Relacionamentos
      c lass nome_classe extends nome_super_classe : nome_interface (extent nome_extensão) { //elementos da classe }; attribute tipo nome_atributo ; relationship classe_relacionada_a nome_relacionamento inverse classe_relacionada_a :: nome_relacionamento_da_classe_relacionada;
    22. ODL
        • Assinaturas de métodos
      tipo_retorno nome_metodo(lista parâmetros) raises (lista_exceções)
    23. OQL
      • OQL( Object Query Language )
        • Entrada e resultado de consulta
        • Navegando nas expressões
      select struct (i: x.idade, s: x.sexo) from (select y from Empregados y where y.anosdecasa = “10”) as x where x.nome = “Kelly” p.pai.endereço.cidade.nome
    24. OQL
        • Predicados
        • Operadores booleanos
        • Polimorfismo
          • “ late binding ”
          • Class indicator
      select p.atividades from Pessoas p select ((Estudante)p).nota from Pessoas p where “curso” in atividades
    25. Jasmine
      • OBD puro
      • Bancos Objeto-Relacionais (Híbridos)
      • Velocidade (Performance)
      • Flexibilidade
      • Desenvolvimento com Jasmine
    26. Object Databases – Conceitos do Jasmine
    27. Componentes do Jasmine
    28. O Projeto do Jasmine
      • Componentes do Jasmine
      • A Arquitetura do Jasmine
      • O Servidor de Bancos de Dados
      • O Cliente Jasmine
      • Considerações com a Largura de Banda
    29. O Projeto do Jasmine - cont
      • A estrutura do Jasmine
      • A Biblioteca de Classes do Jasmine
      • As famílias de Classes do Usuário
      • Desenvolvimento por terceiros
      • A ODQL
      • Stores (Armazéns)
      • As Bibliotecas de classes do Jasmine
    30. 5. Persistent Java
      • Como o pJ funciona?
      • Transações
      • Persistência e Transiência
      • Classes providas pelo pJ
      • Classes criadas pelo Usuário
    31. Como o pJ funciona?
    32. Persistent Java – Ativação
    33. Persistent Java - cont
      • O modelo de ativação do pJ
      • Bases de Dados e Transações (Objetos)
      • Abrindo uma base de Dados
      • Nomeando e procurando por Objetos no Banco de Dados
      • Gerenciando Transações
      • Métodos Gerados
    34. POET
      • Sobre a POET Software
        • O POET Object Server Suite (OSS)
        • A arquitetura do OSS
    35. POET
      • A Tecnologia POET’s Fast Object
        • Armazenamento nativo de objetos e Otimizador de consultas
        • Sistema de smart cahching
        • Consultas baseadas no servidor
        • Pattern s de acesso
        • Locking em nível de objetos
    36. POET
        • Recuperação de espaço de armazenamento
        • Mapeamento de código
        • Versionamento On-the-fly
        • Suporte a tipos de dados definidos pelo usuário
        • Ferramentas de administração
    37. Plataformas Suportadas pelo OSS 6.1
      • Windows
      • Solaris
      • Linux
      • HP-UX
      • Netware
    38. Edição do POET SDK para Java
      • Persistência e o Banco de dados POET
        • POET Java enhancer(PTJ)
        • Arquivo de configuração
        • Funções básicas de manipulação de dados
          • Bind
          • Lookup
          • Delete
      [classesPessoa] persistent = true [schematamy_dict] oneFile = false [databasesmy_base] oneFile = false
    39. POET
      • Banco de dados e Dicionários
        • [databasesContas]
        • schema = SchemaConta
        • onefile = true
      • Collection s
      • Navegação pelos objetos
        • Alcance da persistência
        • Acess Patterns
        • [ schematadictaccessPatterns]
        • usedPatterns = AmigosEParentes
        • defaultPreloadDepth = 2
        • maxPreloadObjects = 7
        • [schematadictaccessPatterns AmigosEParentes]
        • pattern = *.Pessoa.pai, *.Pessoa.mae:4,*.Person.amigos[0-$]:1
    40. Access Patterns
    41. Poet - Transações
        • Transações
        • Database db = new Database();
          • db.open(...);
          • Transaction trans = new Transaction( db );
          • trans.begin();
          • Locks
          • Checkpoints
          • Transações aninhadas
    42. Edição do POET SDK para Java - cont
      • POET Java e aplicações multicamada
    43. Desenvolvimento com Bancos de Dados Orientados a Objeto
      • O processo de desenvolvimento (RUP)
        • Orientado a Casos de Uso
        • Centrado na Arquitetura
        • Interativo e Incremental
    44. Modelagem do Sistema
      • Business Modeling
        • Business Actors
        • Business Use-Case Model
        • Business Object Model
    45. Modelagem de Negócio
    46. Modelo de Casos de Uso
    47. Modelo de Casos de Uso – Auto-Atendimento
    48. Sistema de Auto-Atendimento - Análise e Projeto
    49. Projeto Banco Genérico
      • Projeto SisCon
      • Projeto SisAA
    50. Projeto – Sistema de Contas
    51. Projeto – SisCon
    52. Projeto – Sistema de Auto-Atendimento
    53. Projeto - SisAA
    54. Conclusão
      • Problemas
      • Vantagens
      • Referências

    + adorepumpadorepump, 2 years ago

    custom

    772 views, 0 favs, 1 embeds more stats

    um estudo de caso

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 772
      • 771 on SlideShare
      • 1 from embeds
    • Comments 0
    • Favorites 0
    • Downloads 38
    Most viewed embeds
    • 1 views on http://yankees-br.com

    more

    All embeds
    • 1 views on http://yankees-br.com

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories