$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Neo4j - Dia a dia com grafos, Neo4j e Ruby
Search
hannelita
October 18, 2014
Technology
1
150
Neo4j - Dia a dia com grafos, Neo4j e Ruby
Palestra no TDC 2014 POA - trilha de Ruby
hannelita
October 18, 2014
Tweet
Share
More Decks by hannelita
See All by hannelita
Java EE 8 - Future, Wishes and Predictions
hannelita
1
210
JVM Internals Demystified
hannelita
0
360
Eletrônica
hannelita
0
180
Cassandra Meetup
hannelita
0
72
Our Daily Graphs written in Ruby and Neo4j
hannelita
1
180
Wildfly em alta disponibilidade
hannelita
0
260
Helios - o backend pra Mobile que você precisava <3
hannelita
0
120
Swift - uma fama repentina
hannelita
1
150
Curso relâmpago de eletrônica básica para desenvolvedores
hannelita
1
240
Other Decks in Technology
See All in Technology
[CMU-DB-2025FALL] Apache Fluss - A Streaming Storage for Real-Time Lakehouse
jark
0
120
学習データって増やせばいいんですか?
ftakahashi
2
440
シニアソフトウェアエンジニアになるためには
kworkdev
PRO
3
170
AWS re:Invent 2025で見たGrafana最新機能の紹介
hamadakoji
0
400
Lambdaの常識はどう変わる?!re:Invent 2025 before after
iwatatomoya
1
590
Kubernetes Multi-tenancy: Principles and Practices for Large Scale Internal Platforms
hhiroshell
0
120
チーリンについて
hirotomotaguchi
6
2k
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
230
Kiro Autonomous AgentとKiro Powers の紹介 / kiro-autonomous-agent-and-powers
tomoki10
0
520
AWSを使う上で最低限知っておきたいセキュリティ研修を社内で実施した話 ~みんなでやるセキュリティ~
maimyyym
2
1.7k
[デモです] NotebookLM で作ったスライドの例
kongmingstrap
0
160
エンジニアとPMのドメイン知識の溝をなくす、 AIネイティブな開発プロセス
applism118
4
1.3k
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Code Reviewing Like a Champion
maltzj
527
40k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Transcript
Neo4j Sua vida com grafos!
Oi! • Hanneli (‘H' mudo) • CodeMiner 42 • Café,
Pokémon, Lego e bichos <3 HIRING
faculdade precisa representação fácil memorizar Afinal, por que grafos? Numa
trilha de Ruby!
O que não vamos ver aqui • Teoria avançada de
grafos • Guia completo de Neo4j • Introdução sobre NoSQL • Exemplos de Redes Sociais (CLÁSSICO)
Agenda Teoria básica surge representação Neo4j bancos Primeiros passos vantagens
quando não usar
Dia a dia com grafos Um exemplo além de Twitter
e Facebook
Exemplo Como a Codeminer monta os times para os projetos?
Exemplo Como a Codeminer monta os times para os projetos?
MATCH
Quantas vezes você já não fez desenhos assim?
Breve histórico • Euler • Estatística • Patterns/relacionamento • Dependências
• Trajetos
Persistência
Persistência
Persistência Qual uma das primeiras matérias que! vemos na faculdade?
Quem lembra? Fila Stack Hash Tree Grafos
Persistência Qual a primeira forma de armazenamento que vemos! na
disciplina de Banco de dados? a. Fila b. Stack c. Hash d. Tree e. N.D.A
Persistência
Você já tinha pensado nisso?
Quando me dei conta disso?
Modelagem de usinas hidrelétricas
Falhas modelo relacional
Quero representar isso no modelo relacional USINA localizacao:float capacidade:float nome:float
cidades_que_atende_ids:CIDADE usinas_vizinhas_id:USINA populacao:int
FUUUUUUU….
FUUUUUUU…. • De acordo com a população, qual vizinhança de
usinas devo formar? • Se uma usina cair, qual a melhor para reassumir sem comprometer o sistema? • Como evitar subutilização? • Como monitorar?
Double Fail….
Desaprendi?
Olhe para isso
Parecidos?
Parecidos?
Bancos orientados a grafos Porque nem tudo precisa viver em
tabelas
Neo4j
Nossas usinas agora em grafos Itaipu! é_vizinha Itá latitude:33.43 longitude:32:33
capacidade:1400 latitude:43.43 longitude:56:33 capacidade:700 tensao_linha:230
Nossas usinas agora em grafos Itaipu! é_vizinha Itá latitude:33.43 longitude:32:33
capacidade:1400 latitude:43.43 longitude:56:33 capacidade:700 tensao_linha:230 Node Relationship Attributes index
Representação visual
Nossas usinas agora em grafos Itaipu! alimenta Foz do iguaçu
latitude:33.43 longitude:32:33 capacidade:1400 populacao:265000 alimenta Curitiba populacao:1700000
Itaipu abastece quantas pessoas?
Traversal - Busca Itaipu! alimenta Foz do iguaçu latitude:33.43 longitude:32:33
capacidade:1400 populacao:265000 alimenta Curitiba populacao:1700000
Cypher
Neo4j com Ruby <3 neo4j.rb Active Record
Neo4j com Ruby <3 Wrapper da REST API Neography
Neo4j - Quando não usar?
Neo4j - Quando não usar? • NoSQL Hater? • Buscas
- cautela (profundidade x largura) • Cloud • Monitoramento • Infra (backup) • Pouca RAM
Obrigada! @hannelita
[email protected]
Referências • NoSQL Hater? • Buscas - cautela (profundidade x
largura) • Cloud • Monitoramento • Infra (backup) • Pouca RAM