Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular Departamento de Informática PUC-Rio Aluno: Luiz Fernando Bessa Seibel ([email protected]) Orientador: Sérgio Lifschitz ([email protected]) Agenda Bio AXS Introdução Motivação Abordagens de integração – no contexto da biologia molecular – Trabalhos relacionados A solução proposta - via framework – Funcionalidades – Instanciação dos hot spots – Modelo de dados da arquitetura Modelo conceitual de informações biológicas Comparação entre as arquiteturas de integração Implementação da solução proposta Estudos de caso Contribuições Trabalhos futuros Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 2 Introdução Bio AXS Proposta inicial do doutorado: Pesquisa na área de Bioinformática Primeiro contato com FioCruz: 97 Resposta à questão: “que modelo de dados é apropriado ?” Importância de arquitetura de integração que atendesse requisitos da pesquisa Importância de construção de índices para sequências (melhorar desempenho do BLAST) Poucos grupos de pesquisa na área de bancos de dados e bioinformática: S. Davidson, N. Paton, N. Goodman, V. Markowitz Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 3 Motivação Requisitos da Pesquisa em Bioinformática Bio AXS Desafios: – Lidar com enormes volumes de dados de sequências e outras anotações biológicas, armazenadas em inúmeras fontes de dados heterogêneas, que estão distribuídas – Desenvolver algoritmos de suporte à interpretação dos dados – Novas descobertas precisam ser incorporadas às fontes de dados e podem exigir reconstrução dos algoritmos – Novo ramo da ciência: Bioinformática Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 4 Motivação Requisitos da Pesquisa em Bioinformática Bio AXS Problemas a resolver: – acesso eficiente e integrado às informações – tratamento da evolução dos esquemas das fontes de dados – tratamento da heterogeneidade das fontes de dados – formulação de consultas complexas – acesso a dados atualizados – uso de estruturas de índices para acesso aos dados – desenvolvimento de algoritmos específicos – qualidade das informações armazenadas Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 5 Motivação Fontes de Dados de Biologia Molecular Bio AXS Arquivos texto Bancos de dados que usam modelos de dados distintos (relacional, orientado a objetos, relacional-objeto, semi-estruturados) Arquivos com formatos apropriados para a execução de algoritmos específicos (ex: FASTA, BLAST) Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 6 Motivação Fontes de Dados de Biologia Molecular Bio AXS Armazenam informações complementares do domínio do conhecimento – – – – – – – sequências de nucleotídeos e de proteínas estruturas de proteínas microarrays de DNA anotações de fenômenos biológicos taxonomia publicações pessoas e centros de pesquisa Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 7 Motivação Fontes de Dados de Biologia Molecular Bio AXS Contém dados de: – diversos organismos [GenBank, PIR, Swiss-Prot] – um organismo [AceDB, TcruziDB] – células específicas (ou partes de) [Mitomap] – funções biológicas específicas [ExPASy] – mutações [Human Mutation Databases] Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 8 Motivação Aplicações e Ferramentas Bio AXS Estão associadas às fontes de dados Cada fonte disponibiliza um conjunto reduzido de aplicações Podem exigir formatos específicos Existe código fonte público Exemplos: – – – – – – – Depuração das sequências [LabBase] Sistema automático de submissão de sequências [LabBase] Montagem de fragmentos [Phred-Phrap] Pesquisa de genes [GeneFinder] Comparação de sequências [FAST, BLAST] Alinhamento de sequências [ClustalW] Visualização do mapa do cromossomo / fragmento [AceDB] Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 9 Abordagens de Integração no Contexto da Biologia Molecular (Trabalhos Relacionados) Bio AXS Via SGBDDH Via multidatabase – CPL/Kleisli por P. Buneman, S. Davidson et al. Via data warehouse – GIMS por N. Paton, C. Goble et al. Via mediador – proposto por P. Karp Outras formas de integração usadas em biologia – Via navegação hipertexto entre registros de fontes de dados Entrez (NCBI) – Via sistemas de links entre fontes de dados SRS (EBI) Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 10 Discussão das Abordagens de Integração da Biologia Molecular Bio AXS Ferramentas apresentam limitações: São pouco flexíveis – adotam modelo de dados / esquema próprio – tem dificuldades inerentes à alteração dos esquemas – não permitem o uso das aplicações disponíveis Apresentam baixa performance Não são extensíveis – não permitem incorporar aplicações existentes – limitam o uso das fontes de dados envolvidas – não permitem a instanciação de uma fonte de dados apropriada a uma pesquisa específica Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 11 Por que a integração via framework ? Bio AXS Definição: “Um Framework é uma arquitetura abstrata de software, flexível e extensível, que contém componentes pré-definidos (frozen spots) e outros que devem ser instanciados (hot spots) para a implementação de um desejado e particular sistema” Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 12 A Solução Proposta Bio AXS O framework proposto propicia: Flexibilidade, através da – captura dos esquemas das fontes de dados da biologia – definição e manutenção de um esquema próprio – definição de um modelo de dados / ontologia efetivamente usada nas fontes de dados existentes – utilização das aplicações disponíveis Alta performance no acesso aos dados Extensibilidade, através da – incorporação de qualquer aplicação existente – incorporação de qualquer fonte de dados de biologia – instanciação de uma fonte de dados para uma pesquisa específica Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 13 A Solução Proposta Bio AXS O framework proposto também propicia: Tratar a evolução dos esquemas das fontes de dados – detecta alteração de esquemas, via agente de monitoração – informa ao usuário administrador que houve alteração – usuário administrador procede a uma nova captura, no momento adequado => alteração dos esquemas é assíncrona ! Tratar a evolução dos esquemas específicos – a qualquer momento, por ação do administrador Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 14 A Solução Proposta Bio AXS O framework propicia ainda: Tratar a atualização das instâncias de dados – monitora atualização da fonte de dados – procede à alteração de forma autônoma – termina atualização por ação do administrador O framework é uma solução de integração mais geral do que as existentes e pode ser aplicado a outros domínios, desde que tenham os mesmos requisitos Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 15 Apresentação da Arquitetura Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 16 Aplicações da Biologia Usuários Bio AXS Aplic.1 Aplic.2 Aplic.3 Administrador Driver Driver Driver 1 2 3 Modelo da Biologia Drivers de Aplicação Capturador Conversor (Wrappers) Wrapper 1 Wrapper 2 Wrapper 3 Fonte 1 Fonte 2 Fonte 3 Fontes de Dados da Biologia Luiz Fernando Bessa Seibel Dados Metadados Arquitetura do Framework Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 17 Funcionalidades Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 18 Usuário Administrador Administrador Bio AXS Capturador Conversor (Wrappers) Metadados Wrapper 1 Fonte 1 Luiz Fernando Bessa Seibel Arquitetura do Framework Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 19 Funcionalidades Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 20 • Identifica Objetos • Relaciona Objetos • Define Ontologia Usuário Administrador Administrador Bio AXS Modelo da Biologia Capturador Metadados Arquitetura do Framework Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 21 Funcionalidades Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 22 Usuário Administrador • Seleciona objetos do modelo Administrador Bio AXS Modelo da Biologia Capturador Metadados Arquitetura do Framework Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 23 Funcionalidades Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 24 Usuário Administrador Administrador Bio AXS Modelo da Biologia Capturador Conversor (Wrappers) Wrapper 1 Wrapper 2 Fonte 1 Fonte 2 Dados Fontes de Dados da Biologia Luiz Fernando Bessa Seibel Metadados Arquitetura do Framework Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 25 Funcionalidades Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 26 Usuário Administrador Aplic.1 Administrador Driver 1 Bio AXS Drivers de Aplicação Capturador Dados Metadados Arquitetura do Framework Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 27 Funcionalidades Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 28 Usuário Administrador Bio AXS Capturador Dados Metadados Arquitetura do Framework Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 29 Funcionalidades Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 30 Usuário Administrador Bio AXS Modelo da Biologia Capturador Dados Metadados Arquitetura do Framework Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 31 Funcionalidades Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 32 Usuário Administrador Administrador Bio AXS Capturador Conversor (Wrappers) Wrapper 1 Wrapper 2 Wrapper 3 Fonte 1 Fonte 2 Fonte 3 Fontes de Dados da Biologia Luiz Fernando Bessa Seibel Metadados Arquitetura do Framework Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 33 Funcionalidades Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 34 Usuário Administrador Administrador Bio AXS Capturador Conversor (Wrappers) Wrapper 1 Wrapper 2 Fonte 1 Fonte 2 Dados Fontes de Dados da Biologia Luiz Fernando Bessa Seibel Metadados Arquitetura do Framework Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 35 Framework Instanciação de Wrappers Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 36 Framework Instanciação de Drivers Bio AXS Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 37 O uso de XML e XML Schema Bio AXS XML possui características voltadas para solução de problemas de bioinformática: – – – – – flexível orientada à Internet usada para especificar padrões de dados pode ser lida por qualquer editor de textos Usada para troca de informações entre fontes de dados – Diversas ferramentas disponíveis Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 38 O uso de XML e XML Schema Bio AXS XML Schema é mais completo para a descrição de dados XML do que DTD Existem geradores automáticos de XML Schema a partir de XML XML Schema tem as construções necessárias para descrever esquemas RDF é aplicado a outro tipo de problema – XML representa uma estrutura hierárquica cujos nós estão presentes em um documento – RDF respresenta um grafo rotulado cujos nós são recursos que normalmente estão externos ao documento Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 39 Modelo da Biologia Bio AXS OMG apresenta propostas de parte do modelo da biologia (foco no genoma) GIMS apresenta proposta incompleta do modelo da biologia (ex: estruturas de proteínas) Modelos consideram aspectos não biológicos (ex: detalhes implementação - Corba) Modelos não identificam aspectos tecnológicos (ex: fragmentos, experimentos com microarrays, etc.) Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 40 Modelo Conceitual Genoma Bio AXS Genoma Operon Transposon Profago ElementoExtraCromossomal 0..* 0..* Cromossomomo 1 Plasmídeo DNA_Organelas 1 RegiaoComplexa 0..* 0..1 ProximoAnterior FragmentoCromossomo GrupoRegiao 0..1 0..1 0..* 0..* Regiao 0..* 0..* Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 41 Modelo Conceitual Genoma 0..* Bio AXS 0..* Regiao 0..* 0..* RegiaoNaoInformativa RegiaoInformativa PseudoGene RepeticaoDireta Luiz Fernando Bessa Seibel RegiaoRepetitiva RepeticaoInversa Palindromo RegiaoDesconhecida RegiaoBaixaComplexidade Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 42 Modelo Conceitual Genoma Bio AXS RegiaoInformativa Transcrito 1 1..* Exon 1 0..* Intron RegiaoNaoTranscrita 1 2 UTR SequenciaRegulatoria ElementoCromossomal 1 Componente UTR5_l UTR3_l Promotor Terminador Centromero Telomero ORI 0..1 0..1 0..* Variacao ProximoAnterior 1..* Luiz Fernando Bessa Seibel Promotor_l RBS Terminador_l SitioPoliA Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 43 Modelo Conceitual Genoma 0..* Bio AXS Variacao 1..* Contem Ordem 0..1 1 0..1 ProximoAnterior mRNA 1 TraduzPara 1 PeptideoPrimario 1 1..* EhModificado Proteina Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 44 Modelo Conceitual Proteoma Bio AXS Sitio 0..* 0..* 0..1 EstruturaTerciaria Interacao 0..1 0..1 0..* Proteina Familia 0..1 1 0..* 1..* 0..* 1..* 1 0..* 1 EstruturaSecundaria 0..1 0..* Dominio 0..* Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 45 Comparação entre as Arquiteturas de Integração Critérios Bio AXS Permitir a formulação de consultas complexas, via web, também via interface amigável Permitir acesso a todas as fontes de dados Lidar com o ambiente heterogêneo Permitir transparência de esquema e de localização Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 46 Comparação entre as arquiteturas de integração Critérios Bio AXS Tratar atualização de esquemas e dados Adotar esquema coerente com os das fontes de dados Instanciar fonte específica para uma pesquisa biológica Permitir execução de todos os aplicativos disponíveis Facilitar entendimento dos objetos biológicos Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 47 Comparação entre as arquiteturas de integração Bio AXS Ferramenta Critério 1 2 3 4 5 6 7 8 9 10 11 12 13 14 SRS OPM CPL/Kleisli K2 GUS IGD TAMBIS GIMS Bio-AXS ** Sim *** ** Não Não Não * ---Não * ** * ---- **** Não ** ** *** Sim Sim *** **** Não * **** * *** **** Não * *** **** Sim Sim * **** Não * **** * *** **** Não ** *** **** Sim Sim * **** Não * **** * *** **** Não ** ---** Sim Sim *** **** Não * ** * * **** Sim *** ---** Sim Sim * **** Não * ** * * **** Não * *** **** Sim Sim * **** Não * **** * **** **** Não ** *** **** Sim Sim **** *** Não * ** * * **** Sim **** **** **** Sim Sim **** **** Sim **** *** **** **** Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 48 Implementação da Arquitetura Proposta Bio AXS Implementada em Java – – – – Orientada a Objetos Portabilidade Reuso Interface Web Persistência via Oracle 9i – Tipo de dados XMLType – Consultas: SQL e uso de expressões XPATH – Índices em elementos XML Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 49 Implementação da Arquitetura Proposta Bio AXS Implementação dos wrappers – Swiss-Prot: Construção do analisador gerando código XML Geração do esquema (via SPY) – GenBank: Uso do analisador READSEQ, que gera código XML Geração do esquema (via SPY) – PIR: Já disponibiliza dados em XML Geração do esquema (via SPY) Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 50 Implementação da Arquitetura Proposta Bio AXS Implementação do módulo Administrador – Construção do aplicativo de integração de esquemas, definição do esquema próprio e definição de ontologia, utilizando classe do Oracle para análise e visualização de esquemas em XML Schema (Jtree) Implementação de aplicativos – Externo: uso do BLAST (Gish) – Interno: uso do alinhamento ótimo (Meidanis) Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 51 Contribuições Bio AXS Caso 1: Carga de Dados do Swissprot Caso 2: Construção do Esquema da Biologia Caso 3: Construção do Esquema Específico Caso 4: Instanciação do Esquema Específico Caso 5: Execução do BLAST Caso 6: Execução do Algoritmo de Alinhamento Caso 7: Seleção de Dados Caso 8: Comparação de Keywords do Swissprot e PIR Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 52 Bio AXS Contribuições Proposta de integração via framework, que atende aos requisitos da pesquisa na área de biologia molecular: – permite acesso a todas as fontes de dados – permite execução de qualquer aplicação – atende à performance exigida – trata atualização de esquemas e dados – Permite definir e instanciar um esquema específico Proposta de um esquema conceitual de informações puramente biológicas sobre o dogma central da biologia – identificando aspectos tecnológicos – isento de aspectos de implementação Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 53 Bio AXS Contribuições Construção de um protótipo, que contempla algumas das funcionalidades necessárias, demonstrando: – – – – – integração de esquemas e de dados definição de uma ontologia execução de aplicativos e de consultas criação de esquema específico para uma pesquisa instanciação do esquema específico Comparação entre as arquiteturas de integração existentes Proposta de definição de uma ontologia, que pode ser confrontada com as existentes Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 54 Trabalhos Publicados Bio AXS Seibel L.F.B., Lifschitz S., Lemos M., “Bancos de Dados de Genoma”,Procs. of the Brasilian Database Simposium Tutorials, pp 514-553, 2000. Lifschitz S., Seibel L.F.B., Uchôa E.M.A., “A Framework for Molecular Biology Data Integration”, Procs. Workshop on Information Integration on the Web (WIIW), pp 27-34, 2001. Seibel L.F.B., Lifschitz S., “A Genome Databases Framework”, Proc. 12th Database and Expert Systems Applications (DEXA), ed. T. Bench-Capon et all, Springer-Verlag, pp 319-329, 2001. Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 55 Trabalhos Futuros Bio AXS Implementação de novas funcionalidades ao protótipo – – – Estudos com base no protótipo – – wrappers e aplicações mediador ferramenta amigável para consultas desempenho das consultas à base XML problemas reais da pesquisa em biologia molecular Complemento do modelo conceitual da biologia molecular Geração de descrições lógicas a partir da ontologia gerada, dotando a ferramenta da capacidade de inferir conhecimento, para investigação de comportamentos biológicos Luiz Fernando Bessa Seibel Bio AXS: Uma Arquitetura para Integração de Fontes de Dados e Aplicações da Biologia Molecular 56