SlideShare une entreprise Scribd logo
1  sur  38
Dando o próximo passo nos seus relacionamentos:
        Persistindo em graph databases




    Adriano Almeida         David Paniz
    @adrianoalmeida7        @davidpaniz
Adriano Almeida    David Paniz
@adrianoalmeida7   @davidpaniz
http://browsertoolkit.com/fault-tolerance.png
Por que relacional?
Key/Value

 Baseados no paper da Amazon (Dynamo)
    http://s3.amazonaws.com/AllThingsDistributed/sosp/amazon-dynamo-sosp2007.pdf




Implementações: Dynomite, Redis,Voldemort
BigTable

  Baseados no paper do Google (BigTable)
            http://labs.google.com/papers/bigtable.html




Implementações: BigTable, Hbase, HyperTable
Document

  Inspirado na palestra do Tapajós




Implementações: CouchDB, MongoDB
Document

  Inspirado no Lotus Notes (IBM)




Implementações: CouchDB, MongoDB
Graph (yay)

Inspirado na teoria de grafos - Euler




Implementações: OrientDB, Neo4j
- Justamente por esse ponto, nós sempre que
precisamos representar algum tipo de relacionamento
nós fazemos um desenho PARECIDO com um grafo. Por
isso costumamos falar que grafos são Whiteboard
Friendly, vc consegue representar suas ideias de forma
bem fácil desenhando grafos, mas vc representa suas
ideias desenhando tabelas e fks na lousa (logico que ha
quem faz, mas acreditamos que existem formas mais
faceis).
Componentes
Node (Nó)




Pessoa
Relationship (Relacionamento)




         viajou_para
Pessoa
Outro nó




         viajou_para
Pessoa                 Lugar
Property (Propriedade)




              viajou_para
    Pessoa                       Lugar



nome     Adriano            cidade   Natal
idade      24                país    Brasil
Property (Propriedade)


             quando 06/08/2010
              viajou_para
    Pessoa                       Lugar



nome     Adriano            cidade   Natal
idade      24                país    Brasil
E daí?
Binding JRuby
API Rest
#win
#fail
Obrigado




Adriano Almeida               David Paniz
@adrianoalmeida7              @davidpaniz

Contenu connexe

En vedette

Basic Neo4j Code Examples 2008 05 08
Basic Neo4j Code Examples 2008 05 08Basic Neo4j Code Examples 2008 05 08
Basic Neo4j Code Examples 2008 05 08Dan Nguyen
 
Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...
Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...
Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...Neo4j
 
Sistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingSistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingPriscila Mayumi
 
Aplicações não convencionais de grafos
Aplicações não convencionais de grafosAplicações não convencionais de grafos
Aplicações não convencionais de grafospichiliani
 
Managing Connected Big Data in Art with Neo4j Graph Database - Lorenzo Speran...
Managing Connected Big Data in Art with Neo4j Graph Database - Lorenzo Speran...Managing Connected Big Data in Art with Neo4j Graph Database - Lorenzo Speran...
Managing Connected Big Data in Art with Neo4j Graph Database - Lorenzo Speran...Codemotion
 
Neo4j Graph Data Modeling
Neo4j Graph Data ModelingNeo4j Graph Data Modeling
Neo4j Graph Data ModelingKenny Bastani
 
Intro to Cypher
Intro to CypherIntro to Cypher
Intro to Cypherjexp
 
Football graph - Neo4j and the Premier League
Football graph - Neo4j and the Premier LeagueFootball graph - Neo4j and the Premier League
Football graph - Neo4j and the Premier LeagueMark Needham
 
GraphDay Stockholm - Fraud Prevention
GraphDay Stockholm - Fraud PreventionGraphDay Stockholm - Fraud Prevention
GraphDay Stockholm - Fraud PreventionNeo4j
 
NOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4jNOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4jTobias Lindaaker
 
Neo4j - 5 cool graph examples
Neo4j - 5 cool graph examplesNeo4j - 5 cool graph examples
Neo4j - 5 cool graph examplesPeter Neubauer
 
Graph database Use Cases
Graph database Use CasesGraph database Use Cases
Graph database Use CasesMax De Marzi
 
Data Modeling with Neo4j
Data Modeling with Neo4jData Modeling with Neo4j
Data Modeling with Neo4jNeo4j
 

En vedette (13)

Basic Neo4j Code Examples 2008 05 08
Basic Neo4j Code Examples 2008 05 08Basic Neo4j Code Examples 2008 05 08
Basic Neo4j Code Examples 2008 05 08
 
Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...
Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...
Graphs & Big Data - Philip Rathle and Andreas Kollegger @ Big Data Science Me...
 
Sistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computingSistemas de recomendações e neo4J na cloud computing
Sistemas de recomendações e neo4J na cloud computing
 
Aplicações não convencionais de grafos
Aplicações não convencionais de grafosAplicações não convencionais de grafos
Aplicações não convencionais de grafos
 
Managing Connected Big Data in Art with Neo4j Graph Database - Lorenzo Speran...
Managing Connected Big Data in Art with Neo4j Graph Database - Lorenzo Speran...Managing Connected Big Data in Art with Neo4j Graph Database - Lorenzo Speran...
Managing Connected Big Data in Art with Neo4j Graph Database - Lorenzo Speran...
 
Neo4j Graph Data Modeling
Neo4j Graph Data ModelingNeo4j Graph Data Modeling
Neo4j Graph Data Modeling
 
Intro to Cypher
Intro to CypherIntro to Cypher
Intro to Cypher
 
Football graph - Neo4j and the Premier League
Football graph - Neo4j and the Premier LeagueFootball graph - Neo4j and the Premier League
Football graph - Neo4j and the Premier League
 
GraphDay Stockholm - Fraud Prevention
GraphDay Stockholm - Fraud PreventionGraphDay Stockholm - Fraud Prevention
GraphDay Stockholm - Fraud Prevention
 
NOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4jNOSQLEU - Graph Databases and Neo4j
NOSQLEU - Graph Databases and Neo4j
 
Neo4j - 5 cool graph examples
Neo4j - 5 cool graph examplesNeo4j - 5 cool graph examples
Neo4j - 5 cool graph examples
 
Graph database Use Cases
Graph database Use CasesGraph database Use Cases
Graph database Use Cases
 
Data Modeling with Neo4j
Data Modeling with Neo4jData Modeling with Neo4j
Data Modeling with Neo4j
 

Plus de David Paniz

MVC além do MVC (LT at qconsp2011)
MVC além do MVC (LT at qconsp2011)MVC além do MVC (LT at qconsp2011)
MVC além do MVC (LT at qconsp2011)David Paniz
 
Agile brazil 2011 individuals and interactions over processes and tools
Agile brazil 2011   individuals and interactions over processes and toolsAgile brazil 2011   individuals and interactions over processes and tools
Agile brazil 2011 individuals and interactions over processes and toolsDavid Paniz
 
Pagando sua dívida técnica à vista
Pagando sua dívida técnica à vistaPagando sua dívida técnica à vista
Pagando sua dívida técnica à vistaDavid Paniz
 
Flex além do browser - Lightning talk qcon
Flex além do browser - Lightning talk qcon Flex além do browser - Lightning talk qcon
Flex além do browser - Lightning talk qcon David Paniz
 
Ruby + Rails no Mundo Real 2010 - Voodoo é pra Jacu - Entendendo metaprograma...
Ruby + Rails no Mundo Real 2010 - Voodoo é pra Jacu - Entendendo metaprograma...Ruby + Rails no Mundo Real 2010 - Voodoo é pra Jacu - Entendendo metaprograma...
Ruby + Rails no Mundo Real 2010 - Voodoo é pra Jacu - Entendendo metaprograma...David Paniz
 
Voodoo é pra Jacu - Entendendo metaprogramação em ruby
Voodoo é pra Jacu - Entendendo metaprogramação em rubyVoodoo é pra Jacu - Entendendo metaprogramação em ruby
Voodoo é pra Jacu - Entendendo metaprogramação em rubyDavid Paniz
 

Plus de David Paniz (6)

MVC além do MVC (LT at qconsp2011)
MVC além do MVC (LT at qconsp2011)MVC além do MVC (LT at qconsp2011)
MVC além do MVC (LT at qconsp2011)
 
Agile brazil 2011 individuals and interactions over processes and tools
Agile brazil 2011   individuals and interactions over processes and toolsAgile brazil 2011   individuals and interactions over processes and tools
Agile brazil 2011 individuals and interactions over processes and tools
 
Pagando sua dívida técnica à vista
Pagando sua dívida técnica à vistaPagando sua dívida técnica à vista
Pagando sua dívida técnica à vista
 
Flex além do browser - Lightning talk qcon
Flex além do browser - Lightning talk qcon Flex além do browser - Lightning talk qcon
Flex além do browser - Lightning talk qcon
 
Ruby + Rails no Mundo Real 2010 - Voodoo é pra Jacu - Entendendo metaprograma...
Ruby + Rails no Mundo Real 2010 - Voodoo é pra Jacu - Entendendo metaprograma...Ruby + Rails no Mundo Real 2010 - Voodoo é pra Jacu - Entendendo metaprograma...
Ruby + Rails no Mundo Real 2010 - Voodoo é pra Jacu - Entendendo metaprograma...
 
Voodoo é pra Jacu - Entendendo metaprogramação em ruby
Voodoo é pra Jacu - Entendendo metaprogramação em rubyVoodoo é pra Jacu - Entendendo metaprogramação em ruby
Voodoo é pra Jacu - Entendendo metaprogramação em ruby
 

Dando o próximo passo nos seus relacionamentos: Persistindo em graph databases

Notes de l'éditeur