O documento discute as vantagens dos bancos de dados de grafos (GraphDatabases) para manipulação de redes complexas. GraphDatabases modelam dados de forma mais natural como grafos ao invés de tabelas e fornecem consultas e algoritmos que aproveitam a estrutura de rede. Estudos mostram que GraphDatabases podem ser de 1,25 a 10 vezes mais rápidos do que bancos de dados tradicionais para certos tipos de queries em redes complexas. A melhor implementação de GraphDatabase depende das características do problema.
14. Características dos Modelos de GraphDatabase Componentes básicos Estrutura de dados Linguagem de transformação Restrições de integridade
15. Vantagens do GraphDatabase Modelagem mais natural Consultas aproveitando a estrutura dos grafos Maior nível de abstração Algoritmos de grafos para operações específicas
16. Exemplo de utilização Redes Sociais GraphDatabase + Redes Complexas João EU Através de que pessoas eu conheço o João? ou seja, Qual o caminho mínimo até João
30. Na prática qual é ganho? Graphdatabase Algumas vezes 10x mais rápido! Vicknair, C. et al. (2010)
31. Conclusão Graphdatabasessão adequados para redes complexas A melhor implementação depende das características do problema Persistência poliglota pode ser a solução
33. Referências ANGLES, R. & GUTIERREZ, C. Survey of graph database models. ACM Comput. Surv., 40(1):1–39, 2008. VICKNAIR, C. et al. A Comparison of a Graph Database and a Relational Database. ACMSE ’10, Oxford, MS, USA, 2010. IMPLEMENTAÇÕES GRAPH DATABASES. Acessado em: 27/06/2011 ww.graph-database.org/implementations/ ALGORITMOS DO NEO4J. Acessado em: 28/06/2011 http://docs.neo4j.org/chunked/stable/graph-algo.html ALGORITMOS DO DEX. Acessado em: 28/06/2011 http://sparsity-technologies.com/downloads/javadoc.pdf ALGORITMOS DO HYPERGRAPHDB. Acessado em: 28/06/2011 http://www.hypergraphdb.org/docs/javadoc/org/hypergraphdb/algorithms/GraphClassics.html