SlideShare una empresa de Scribd logo
1 de 22
Bio4J




       
Generalidades

    Bio4J es una Base de Datos basada en grafos, para aplicaciones
    bioinformáticas. Utiliza tecnología NoSQL
    Basada en Neo4j
     Incluye gran parte de la información disponible en UniProt
    (SwissProt + Trembl) , Gene Ontology (GO) y UniRef.
    Es software libre bajo licencia AGPLv3.




                                     
Generalidades (cont)

    En Bio4J la información está organizada en
      una manera que es semánticamente              Gen
      equivalente a lo que ésta representa,
      gracias a la estructura de grafos.                            Genoma



    Consultas que pueden ser muy complejas en
      RDBMS estándar se vuelven muy rápidas      Gen­AnotacionGO
      y simples cuando se usa esta nueva
      aproximación al problema.                            Termin
                                                              o 
                                                             GO




                                         
Generalidades (cont)

    Abstracciones base
                                              Especie
                                    Gen       Secuencia
                                              Funciones
     Nodos
     Relaciones
     Propiedades (para ambos)         Tipo=Codifica



                                                      Protein
                                                          a




                                 
Representación gráfica




               
Es una base de datos basada en grafos. Almacena información en los
      nodos y relaciones de un grafo. Es la fundación para Bio4J


    Optimizada para almacenar estructuras de grafo con máximo
      desempeño y escalabilidad
    ACID
    Puede manejar miles de millones de nodos-relaciones-propiedades en
      un solo servidor o varios de ellos
    Optimizado para hacer recorridos veloces en el espacio de nodos



                                      
Nodos y relaciones


          Los nodos están organizados por
           relaciones, también tienen
           propiedades

          Las relaciones pueden crear
           estructuras determinadas: Lista,
           Árbol, Mapa, etc...




     
Recorridos


        El recorrido es la forma en la que
         se consulta el grafo.

        Se navega desde los nodos iniciales
         hasta nodos relacionados,
         dependiendo de la infomación
         buscada




     
Indices



        Los índices mapean nodos
         y relaciones a partir de
         las propiedades




     
Bio4j vs RDBMS


El modelo de dominios
   grandes en una RDBMS
   suele ser engorroso y las
   consultas se complican




                                
Bio4j vs RDBMS


    Las RDBMS están optimizadas para grandes cantidades de datos
      agregados. Bio4J está optimizada por datos altamente interconectados

    Integrar nuevo conocimiento en un modelo relacional puede ser
       complicado y muchas veces no es posible sin cambiar el modelo

    En el modelo relacional, se pueden necesitar muchas tablas y subtablas
      para representar una entidad y sus datos asociados

    Se pueden hacer necesarios muchos JOINS para encontrar relaciones
      entre entidades



                                       
Bio4J vs RDBMS


    Bio4J es más adecuado para modelado de información biológica




                                     
Herramientas: Bio4jExplorer



    Navegar nodos y relaciones

    Explorar el vecindario de un nodo o relación

    Buscar por índices relacionados con un nodo

    Buscar relaciones entrantes y salientes para un nodo

    Buscar nodos de inicio y de fin para una relación




                                        
Herramientas: Bio4jExplorer

    http://gotools.bio4j.com:8080/Bio4jExplorerServer/Bio4jExplorer.html




                                          
Herramientas: Java API


Bio4jManagermanager=newBio4jManager(“/mybio4jd
  b”);
NodeRetrievernR=newNodeRetriever(manager);
ProteinNodeprotein=nR.getProteinNodeByAccession(“
 P12345”);


// Mas informacion relacionada


List<InterproNode>interpros=protein.getInterpro();
                          
Herramientas: Cypher


    Cypher Query Language.

    Permite hacer consultas rápidas y poderosas a la base de datos son
      necesidad de escribir código

    Inspirado en SQL

    Pensado para desarrolladores y usuarios finales




                                       
Herramientas: Cypher




               
Herramientas: Cypher

    START john=node:node_auto_index(name = 'John')
    MATCH john-[:friend]->()-[:friend]->fof
    RETURN john, fof



    john                    fof

    Node[4]{name­>"John"}   Node[2]{name­>"Maria"}

    Node[4]{name­>"John"}   Node[3]{name­>"Steve"}

    2 rows, 2 ms




                               
Herramientas: REST Server


    También se puede usar la API REST para acceder y navegar la
      información. Los datos obtenidos están codificados por defecto en
      JSON


    Obtener proteína por código
    http://server_url:7474/db/data/index/node/protein_accession_index/
       protein_accession_index/Q9UR66
    Obtener relaciones salientes para proteína
    http://server_url:7474/db/data/node/Q9UR66_node_id/relationships/
       out

                                        
Herramientas: Cloud Services




                  
Herramientas: Cloud Services


    Crear un web server usando AWS con Bio4j como backend es bastante
      simple


    Hay código liberado como EBS snapshots


    Plantillas CloudFormation:
      Basic Bio4j DB Instance
      Bio4j REST Server Instance



                                    
Demostración




          

Más contenido relacionado

Similar a Bio4j

Bases De Datos Orientadas A Objetos2
Bases De Datos Orientadas A Objetos2Bases De Datos Orientadas A Objetos2
Bases De Datos Orientadas A Objetos2
Cristina Huerta
 

Similar a Bio4j (20)

DB4O + BIRT
DB4O + BIRTDB4O + BIRT
DB4O + BIRT
 
Tutorial neo4j en español
Tutorial neo4j en españolTutorial neo4j en español
Tutorial neo4j en español
 
Motor de persistencia nhibernate
Motor de persistencia nhibernateMotor de persistencia nhibernate
Motor de persistencia nhibernate
 
GESTOR DE BASE DE DATOS
GESTOR DE BASE DE DATOSGESTOR DE BASE DE DATOS
GESTOR DE BASE DE DATOS
 
Bases De Datos Orientadas A Objetos2
Bases De Datos Orientadas A Objetos2Bases De Datos Orientadas A Objetos2
Bases De Datos Orientadas A Objetos2
 
mini-taller de Base de Datos y PostgreSQL
mini-taller de Base de Datos y PostgreSQLmini-taller de Base de Datos y PostgreSQL
mini-taller de Base de Datos y PostgreSQL
 
cc302modulo1
cc302modulo1cc302modulo1
cc302modulo1
 
Persistencia de datos_hibernate_arquitecturas_de_software
Persistencia de datos_hibernate_arquitecturas_de_softwarePersistencia de datos_hibernate_arquitecturas_de_software
Persistencia de datos_hibernate_arquitecturas_de_software
 
Bdoo
BdooBdoo
Bdoo
 
Actividad 4
Actividad 4Actividad 4
Actividad 4
 
Bases de datos orientadas a grafos
Bases de datos orientadas a grafosBases de datos orientadas a grafos
Bases de datos orientadas a grafos
 
Base De Datos Tecnologia De Negocios Electronicos
Base De Datos Tecnologia De Negocios ElectronicosBase De Datos Tecnologia De Negocios Electronicos
Base De Datos Tecnologia De Negocios Electronicos
 
Gestor de base de datos
Gestor de base de datosGestor de base de datos
Gestor de base de datos
 
Tema 1 base de datos
Tema 1   base de datosTema 1   base de datos
Tema 1 base de datos
 
Unidad I
Unidad I Unidad I
Unidad I
 
Desarrollo de una interfaz Web de consulta y análisis de datos en Bioinformat...
Desarrollo de una interfaz Web de consulta y análisis de datos en Bioinformat...Desarrollo de una interfaz Web de consulta y análisis de datos en Bioinformat...
Desarrollo de una interfaz Web de consulta y análisis de datos en Bioinformat...
 
Gbd tarea1
Gbd tarea1Gbd tarea1
Gbd tarea1
 
Bdrelacional
BdrelacionalBdrelacional
Bdrelacional
 
Bdrelacional
BdrelacionalBdrelacional
Bdrelacional
 
Zend Framework - MVC - 2008
Zend Framework - MVC - 2008Zend Framework - MVC - 2008
Zend Framework - MVC - 2008
 

Último

Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
RigoTito
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 

Último (20)

Biografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdfBiografía de Charles Coulomb física .pdf
Biografía de Charles Coulomb física .pdf
 
La Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración AmbientalLa Sostenibilidad Corporativa. Administración Ambiental
La Sostenibilidad Corporativa. Administración Ambiental
 
Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024Interpretación de cortes geológicos 2024
Interpretación de cortes geológicos 2024
 
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
activ4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdfactiv4-bloque4 transversal doctorado.pdf
activ4-bloque4 transversal doctorado.pdf
 
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docxPLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
PLAN DE REFUERZO ESCOLAR MERC 2024-2.docx
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
2 REGLAMENTO RM 0912-2024 DE MODALIDADES DE GRADUACIÓN_.pptx
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024Tema 19. Inmunología y el sistema inmunitario 2024
Tema 19. Inmunología y el sistema inmunitario 2024
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 

Bio4j

  • 1. Bio4J    
  • 2. Generalidades Bio4J es una Base de Datos basada en grafos, para aplicaciones bioinformáticas. Utiliza tecnología NoSQL Basada en Neo4j Incluye gran parte de la información disponible en UniProt (SwissProt + Trembl) , Gene Ontology (GO) y UniRef. Es software libre bajo licencia AGPLv3.    
  • 3. Generalidades (cont) En Bio4J la información está organizada en una manera que es semánticamente Gen equivalente a lo que ésta representa, gracias a la estructura de grafos. Genoma Consultas que pueden ser muy complejas en RDBMS estándar se vuelven muy rápidas Gen­AnotacionGO y simples cuando se usa esta nueva aproximación al problema. Termin o  GO    
  • 4. Generalidades (cont) Abstracciones base Especie Gen Secuencia Funciones Nodos Relaciones Propiedades (para ambos) Tipo=Codifica Protein a    
  • 6. Es una base de datos basada en grafos. Almacena información en los nodos y relaciones de un grafo. Es la fundación para Bio4J Optimizada para almacenar estructuras de grafo con máximo desempeño y escalabilidad ACID Puede manejar miles de millones de nodos-relaciones-propiedades en un solo servidor o varios de ellos Optimizado para hacer recorridos veloces en el espacio de nodos    
  • 7. Nodos y relaciones Los nodos están organizados por relaciones, también tienen propiedades Las relaciones pueden crear estructuras determinadas: Lista, Árbol, Mapa, etc...    
  • 8. Recorridos El recorrido es la forma en la que se consulta el grafo. Se navega desde los nodos iniciales hasta nodos relacionados, dependiendo de la infomación buscada    
  • 9. Indices Los índices mapean nodos y relaciones a partir de las propiedades    
  • 10. Bio4j vs RDBMS El modelo de dominios grandes en una RDBMS suele ser engorroso y las consultas se complican    
  • 11. Bio4j vs RDBMS Las RDBMS están optimizadas para grandes cantidades de datos agregados. Bio4J está optimizada por datos altamente interconectados Integrar nuevo conocimiento en un modelo relacional puede ser complicado y muchas veces no es posible sin cambiar el modelo En el modelo relacional, se pueden necesitar muchas tablas y subtablas para representar una entidad y sus datos asociados Se pueden hacer necesarios muchos JOINS para encontrar relaciones entre entidades    
  • 12. Bio4J vs RDBMS Bio4J es más adecuado para modelado de información biológica    
  • 13. Herramientas: Bio4jExplorer Navegar nodos y relaciones Explorar el vecindario de un nodo o relación Buscar por índices relacionados con un nodo Buscar relaciones entrantes y salientes para un nodo Buscar nodos de inicio y de fin para una relación    
  • 14. Herramientas: Bio4jExplorer http://gotools.bio4j.com:8080/Bio4jExplorerServer/Bio4jExplorer.html    
  • 15. Herramientas: Java API Bio4jManagermanager=newBio4jManager(“/mybio4jd b”); NodeRetrievernR=newNodeRetriever(manager); ProteinNodeprotein=nR.getProteinNodeByAccession(“ P12345”); // Mas informacion relacionada List<InterproNode>interpros=protein.getInterpro();    
  • 16. Herramientas: Cypher Cypher Query Language. Permite hacer consultas rápidas y poderosas a la base de datos son necesidad de escribir código Inspirado en SQL Pensado para desarrolladores y usuarios finales    
  • 18. Herramientas: Cypher START john=node:node_auto_index(name = 'John') MATCH john-[:friend]->()-[:friend]->fof RETURN john, fof john fof Node[4]{name­>"John"} Node[2]{name­>"Maria"} Node[4]{name­>"John"} Node[3]{name­>"Steve"} 2 rows, 2 ms    
  • 19. Herramientas: REST Server También se puede usar la API REST para acceder y navegar la información. Los datos obtenidos están codificados por defecto en JSON Obtener proteína por código http://server_url:7474/db/data/index/node/protein_accession_index/ protein_accession_index/Q9UR66 Obtener relaciones salientes para proteína http://server_url:7474/db/data/node/Q9UR66_node_id/relationships/ out    
  • 21. Herramientas: Cloud Services Crear un web server usando AWS con Bio4j como backend es bastante simple Hay código liberado como EBS snapshots Plantillas CloudFormation: Basic Bio4j DB Instance Bio4j REST Server Instance