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
Neo4j - Dia a dia com grafos, Neo4j e Ruby
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
hannelita
October 18, 2014
Technology
180
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Neo4j - Dia a dia com grafos, Neo4j e Ruby
Palestra no TDC 2014 POA - trilha de Ruby
hannelita
October 18, 2014
More Decks by hannelita
See All by hannelita
Java EE 8 - Future, Wishes and Predictions
hannelita
1
240
JVM Internals Demystified
hannelita
0
380
Eletrônica
hannelita
0
200
Cassandra Meetup
hannelita
0
87
Our Daily Graphs written in Ruby and Neo4j
hannelita
1
200
Wildfly em alta disponibilidade
hannelita
0
290
Helios - o backend pra Mobile que você precisava <3
hannelita
0
130
Swift - uma fama repentina
hannelita
1
170
Curso relâmpago de eletrônica básica para desenvolvedores
hannelita
1
280
Other Decks in Technology
See All in Technology
「重なり」は迎える側がつくる ― 人もAIエージェントも歓迎するプロダクトエンジニアリング ―
go0517go
PRO
0
150
みてねにおけるAI-DLC導入活動とAIドリブン開発の現在地/JAWS-UG AI-DLC #2
isaoshimizu
2
330
Oracle AI Databaseデータベース・サービス: BaseDB/ExaDB-Dの可用性
oracle4engineer
PRO
1
1.1k
[DroidKaigi 2026] Making UI specifications visible: Android UI development in the AI agent era supported by Compose Screenshot Testing and galleries
syarihu
0
470
APIセキュリティを組織で実現するには~注力する点と設計・実装に入れたい対策~
riiimparm
3
890
どんな手を使っても絶対間に合わせるスケジューラ
asari194617
0
1.5k
20260906 「AWS運用入門」著者が教える、運用業務への生成AI活用入門
masaruogura
0
120
Bet AI Day 2026丨How We Bet AI: AIとともに働く場をつくる
layerx
PRO
1
1.7k
Hub & Spoke 環境のネットワークルーティングを分解してみる
tsuyataku
1
510
KAEN Company Deck
kaen
PRO
0
260
Benchmarking Vector Databases: pgvector vs. LanceDB
tsho
0
110
AIエージェントの開発・提供におけるセキュリティリスクの論点と対策
flatt_security
1
380
Featured
See All Featured
The Limits of Empathy - UXLibs8
cassininazir
1
630
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
Embracing the Ebb and Flow
colly
88
5.2k
Abbi's Birthday
coloredviolet
3
9.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
What's in a price? How to price your products and services
michaelherold
247
13k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
510
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Git: the NoSQL Database
bkeepers
PRO
432
67k
WCS-LA-2024
lcolladotor
0
820
30 Presentation Tips
portentint
PRO
1
380
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