Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Grafos distribuídos com Titan:db
Search
Mike Dias
July 23, 2015
Technology
0
330
Grafos distribuídos com Titan:db
Palestra sobre Big Graph Data com Titan:db apresentada no @TheDevConf nas trilhas BigData e NoSQL
Mike Dias
July 23, 2015
Tweet
Share
More Decks by Mike Dias
See All by Mike Dias
Elytics: Métricas em tempo real no Elo7
mikedias
0
89
Grafos com TinkerPop3 e TitanDB - TDC2016
mikedias
0
74
Index Activiti data on Elasticsearch
mikedias
0
270
TinkerPop Blueprints
mikedias
0
55
Other Decks in Technology
See All in Technology
Compose Compiler Metricsを使った実践的なコードレビュー
tomorrowkey
1
220
私が trocco を推す理由
__allllllllez__
1
250
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
4
16k
本当のAWS基礎
toru_kubota
0
530
検証を通して見えてきたTiDBの性能特性
lycorptech_jp
PRO
6
3.8k
データベース02: データベースの概念
trycycle
0
160
KubeConにproposalを送りたい人へのアドバイス
sat
PRO
3
260
ServiceNow Knowledge 24の歩き方 EYストラテジー・アンド・コンサルティング
manarobot
0
200
Google Cloud Next '24 Recap(Cloud Run/k8s)
mokocm
0
240
プロトタイピングによる不確実性の低減 / Reducing Uncertainty through Prototyping
ohbarye
5
390
元インフラエンジニアに成る / Human Resources to Human Relations
bobtani
4
930
生産性向上チームの紹介
cybozuinsideout
PRO
1
870
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
20
1.9k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
What's new in Ruby 2.0
geeforr
337
31k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
51k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Done Done
chrislema
178
15k
Unsuck your backbone
ammeep
663
57k
Why Our Code Smells
bkeepers
PRO
331
56k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
Transcript
Titan:db Grafos distribuídos com @mike_dias
@mike_dias
[email protected]
O que são grafos?
mother name: hercules age: 30 type: demigod name: alcmene age:
24 type: human name: jupter age: 5000 type: god father
mother name: hercules age: 30 type: demigod name: alcmene age:
24 type: human name: jupter age: 5000 type: god father Vertex
mother name: hercules age: 30 type: demigod name: alcmene age:
24 type: human name: jupter age: 5000 type: god father Edge
mother name: hercules age: 30 type: demigod name: alcmene age:
24 type: human name: jupter age: 5000 type: god father Property
Property Graph
Por que usar grafos?
Modelagem intuitiva
Queries expressivas
Vários tipos de análises • Ranking • Path expressions •
Scoring • Inference • Motifs • Mixing patterns • Geodesic • Etc..
Casos de uso Recomendações personalizadas Influência social
Casos de uso Melhor rota Detecção de fraude
Por que usar o Titan?
Titan:db • Grafos de tamanhos “infinitos" • Capacidades OLTP e
OLAP • Licença Apache 2
Backend flexível
Titan:db + • Disponibilidade contínua sem ponto único de falha
• Sem gargalos na leitura ou escrita no grafo • Escalabilidade elástica • Cache de dados frequentemente acessados
• Leituras e escritas estritamente consistentes • Escalabilidade linear •
Integração com o ecossistema Hadoop • Hadoop MapReduce jobs + HBase tables. Titan:db +
g.V.has('name',CONTAINS,'Bob') g.V.has('place',WITHIN,Geoshape.circle(37.97,23.72,50)) Full text & Geo Search
Integração com Hadoop GraphSON
Graph derivation
Graph statistic
TinkerPop Blueprints
Preparado para o TinkerPop3
Como usar o Titan?
Local server mode TitanGraph g = TitanFactory.build() .set("storage.backend","cassandra")
.set("storage.hostname","127.0.0.1") .open();
Remote server mode TitanGraph g = TitanFactory.build() .set("storage.backend","cassandra")
.set("storage.hostname","77.77.77.77,77.77.77.78") .open();
Remote server mode usando Rexter GET http://rexster.titan.machine1/mygraph/vertices/1 GET http://rexster.titan.machine2/mygraph/tp/gremlin
?script=g.v(1).out('follows').out('created')
Quem está usando?
http://arli.us/magazinaluiza
http://arli.us/edu-planet-scale
http://arli.us/cisco-sec1
http://pt.slideshare.net/Hadoop_Summit/t-235p230-ctang
None
Concluindo… • Vários casos de uso resolvidos com Grafos •
Titan transforma Big Data em Big "Graph" Data • Rexter expõe o Titan para qualquer linguagem • Tecnologia open source e madura
Obrigado! @mike_dias
[email protected]
Dúvidas?