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
Our Daily Graphs written in Ruby and Neo4j
Search
hannelita
October 24, 2014
Technology
1
140
Our Daily Graphs written in Ruby and Neo4j
Talk given at RubyConf AR 2014 - Buenos AIres
hannelita
October 24, 2014
Tweet
Share
More Decks by hannelita
See All by hannelita
Java EE 8 - Future, Wishes and Predictions
hannelita
1
180
JVM Internals Demystified
hannelita
0
320
Eletrônica
hannelita
0
150
Cassandra Meetup
hannelita
0
48
Wildfly em alta disponibilidade
hannelita
0
210
Helios - o backend pra Mobile que você precisava <3
hannelita
0
89
Neo4j - Dia a dia com grafos, Neo4j e Ruby
hannelita
1
110
Swift - uma fama repentina
hannelita
1
110
Curso relâmpago de eletrônica básica para desenvolvedores
hannelita
1
160
Other Decks in Technology
See All in Technology
Classmethod流のPlatform Engineering / classmethod-platform-engineering-devio2024
tomoki10
0
470
AWS IAMのアンチパターン/AWSが考える最低権限実現へのアプローチ概略(JAWS-UG朝会#59資料改修20分版)
htan
0
330
データ分析を支える技術 生成AI再入門
ishikawa_satoru
0
380
Datadog Cloud SIEMを使ってAWS環境の脅威を可視化した話/lifeistech-datadog-cloud-siem
gidajun
0
480
AOAI Dev Day LLMシステム開発 Tips集
hirosatogamo
15
3.6k
さらに高品質・高速化を目指すAI時代のテスト設計支援と、めざす先 / AI Test Lab vol.1
shift_evolve
0
190
AWSサービスメニュー開発をしていてAWSを好きだ!と感じた瞬間
toru_kubota
0
130
Amazon FSx for NetApp ONTAPのパフォーマンスチューニング要素をまとめてみた #cm_odyssey #devio2024
non97
0
220
公共領域から学ぶ クラウド移行についてエンジニアが意識していること
kawakawa2222
0
140
Scaling Technical Excellence at 104: Evolution in AWS and Developer Empowerment
scotthsieh825
1
150
運用改善、不都合な真実 / 20240722-ssmjp-kaizen
opelab
17
8k
サービスの持続的な成長と技術負債について
siva_official
PRO
10
4.4k
Featured
See All Featured
Scaling GitHub
holman
458
140k
Adopting Sorbet at Scale
ufuk
71
8.8k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
The Mythical Team-Month
searls
217
43k
Fireside Chat
paigeccino
25
2.8k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
GitHub's CSS Performance
jonrohan
1026
450k
Producing Creativity
orderedlist
PRO
340
39k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
226
52k
Making the Leap to Tech Lead
cromwellryan
127
8.7k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
277
13k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
13
430
Transcript
Our Daily Graphs Written in Ruby and Neo4j
Hola! / Oi! / Hi! • Hanneli - from Brazil
• CodeMiner 42 • Coffee (coffee, coffee, coffee, coffee, coffee, coffee), Pokémon, Lego and animals <3 HIRING
We *WON’T* see here • Advanced graph theory • Neo4j
complete guide • Java stuff (Neo4j is written in Java) • Social Networks classics example (eeeww)
Why graphs? In a Ruby Conference!
Example How does Codeminer build dev teams?
Example How does Codeminer build dev teams? MATCH
How many times have you made drawings like these?
Some history • Euler • Statistics • Patterns/relationship • Dependencies
• Routes
Persistence
Persistence
Persistence One of the first CS subjects is…
Do you remember? Queue Stack Hash Tree Graphs
Persistence What’s the first storing system we study! into databases
class? a. Queue b. Stack c. Hash d. Tree e. None
Persistence
Have you ever thought about it?
When did I notice that?
Hydropower modelling
Hydropower in Brazil
Wanna represent hydropower map into relational model HYDROPOWER_PLANT locale:float capacity:float
name:float providing_city_id:CITY neighbor_id:HYDROPOWER_PLANT population:int
FUUUUUUU….
FUUUUUUU…. • According to population, how should I create hydropower
plants neighbors? • If one plant shuts off, which one should replace it without causing damage to the entire system? • How should I avoid underuse? • Monitoring?
Double Fail….
‘Unleraned?'
Look at this
Similar?
Similar?
Graphs oriented databases Because not all data need to live
in tables
Neo4j
Our plants into graphs Itaipu! is_neighbor Itá latitude:33.43 longitude:32:33 capacity:1400
latitude:43.43 longitude:56:33 capacity:700 line_voltage:230
Our plants into graphs Itaipu! is_neighbor Itá latitude:33.43 longitude:32:33 capacity:1400
latitude:43.43 longitude:56:33 capacity:700 line_voltage:230 Node Relationship Attributes index
Visual representation Itaipu! Itá
Our plants into graphs Itaipu! feeds Foz do iguaçu latitude:33.43
longitude:32:33 capacity:1400 population:265000 feeds Curitiba population:1700000
How many people does Itaipu feed?
Traversal - Search Itaipu! feeds Foz do iguaçu latitude:33.43 longitude:32:33
capacity:1400 population:265000 feeds Curitiba population:1700000
Cypher
Neo4j with Ruby <3 neo4j.rb Active Record
Neo4j with Ruby <3 REST API Wrapper Neography
Neo4j - When should I not use?
Neo4j - When should I not use? • NoSQL Hater?
• Searches - BE CAREFUL (depth x width) • Cloud • Node Monitor • Infra (backup) • Limted RAM
Obrigada! @hannelita
[email protected]
Questions?