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
hannelita
October 18, 2014
Technology
1
140
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
200
JVM Internals Demystified
hannelita
0
350
Eletrônica
hannelita
0
170
Cassandra Meetup
hannelita
0
56
Our Daily Graphs written in Ruby and Neo4j
hannelita
1
170
Wildfly em alta disponibilidade
hannelita
0
240
Helios - o backend pra Mobile que você precisava <3
hannelita
0
110
Swift - uma fama repentina
hannelita
1
140
Curso relâmpago de eletrônica básica para desenvolvedores
hannelita
1
220
Other Decks in Technology
See All in Technology
React Server ComponentsでAPI不要の開発体験
polidog
PRO
0
220
Google Agentspaceを実際に導入した効果と今後の展望
mixi_engineers
PRO
3
700
【OptimizationNight】数理最適化のラストワンマイルとしてのUIUX
brainpadpr
2
470
生成AIによるデータサイエンスの変革
taka_aki
0
3k
ファッションコーディネートアプリ「WEAR」における、Vertex AI Vector Searchを利用したレコメンド機能の開発・運用で得られたノウハウの紹介
zozotech
PRO
0
270
アカデミーキャンプ 2025 SuuuuuuMMeR「燃えろ!!ロボコン」 / Academy Camp 2025 SuuuuuuMMeR "Burn the Spirit, Robocon!!" DAY 1
ks91
PRO
0
140
リリース2ヶ月で収益化した話
kent_code3
1
260
全員が手を動かす組織へ - 生成AIが変えるTVerの開発現場 / everyone-codes-genai-transforms-tver-development
tohae
0
150
いかにして命令の入れ替わりについて心配するのをやめ、メモリモデルを愛するようになったか(改)
nullpo_head
7
2.6k
AWS DDoS攻撃防御の最前線
ryutakondo
1
150
ZOZOTOWNの大規模マーケティングメール配信を支えるアーキテクチャ
zozotech
PRO
0
270
10年以上続くプロダクトで今取り組んでること、取り組もうとしていること
sansantech
PRO
2
100
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
A better future with KSS
kneath
239
17k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
283
13k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
800
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The Invisible Side of Design
smashingmag
301
51k
Side Projects
sachag
455
43k
Typedesign – Prime Four
hannesfritz
42
2.7k
Git: the NoSQL Database
bkeepers
PRO
431
65k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
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