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
Amazon Neptuneに入門してみる
Search
Yu Watanabe
March 17, 2018
Programming
0
13k
Amazon Neptuneに入門してみる
NDS 長岡 IT開発者 勉強会 第55回勉強会(2018/03/17)
Yu Watanabe
March 17, 2018
Tweet
Share
More Decks by Yu Watanabe
See All by Yu Watanabe
今日から使えるCSSパターン
yuw27b
1
3k
Other Decks in Programming
See All in Programming
Lookerは可視化だけじゃない。UIコンポーネントもあるんだ!
ymd65536
1
110
php-conference-japan-2024
tasuku43
0
410
Androidアプリのモジュール分割における:x:commonを考える
okuzawats
1
270
Fibonacci Function Gallery - Part 2
philipschwarz
PRO
0
210
コンテナをたくさん詰め込んだシステムとランタイムの変化
makihiro
1
180
Fibonacci Function Gallery - Part 1
philipschwarz
PRO
0
270
Запуск 1С:УХ в крупном энтерпрайзе: мечта и реальность ПМа
lamodatech
0
910
ドメインイベント増えすぎ問題
h0r15h0
2
550
QA環境で誰でも自由自在に現在時刻を操って検証できるようにした話
kalibora
1
120
Cloudflare MCP ServerでClaude Desktop からWeb APIを構築
kutakutat
1
640
PSR-15 はあなたのための ものではない? - phpcon2024
myamagishi
0
380
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
160
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Facilitating Awesome Meetings
lara
50
6.2k
The Language of Interfaces
destraynor
155
24k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
340
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Mobile First: as difficult as doing things right
swwweet
222
9k
Side Projects
sachag
452
42k
Done Done
chrislema
182
16k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Transcript
"NB[PO/FQUVOFʹೖͯ͠ΈΔ :V8BUBOBCF !ZVXC /%4Ԭ*5։ൃऀษڧձ ୈճษڧձ
ࣗݾհ ඇৗۈΤϯδχΞʴϑϦʔϥϯε ˙ 41"ʴ"1*ʴ%#ͳ8FCαʔϏεͷ੍࡞!ΞΧσϛΞ ϑϩϯτΤϯυɿ+BWB4DSJQU3FBDU όοΫΤϯυɿ/PEFKT 3VCZ1)1 σʔλϕʔεؔɿ.Z42-/FPK3%' ͦͷଞɿαʔόͷઃఆͱ͔ػցֶशͷ͓ख͍ͱ͔ ɾɾɾͳΜͰ͞ΜͰ͢ɻ
ຊͷςʔϚ "NB[PO/FQUVOF "GVMMZNBOBHFEHSBQIEBUBCBTF "84ʹؒೖΓͨ͠άϥϑσʔλϕʔεͰ͢ɻ ݱࡏϓϨϏϡʔ൛͕͑·͢ɻ
άϥϑɾɾɾʁ γϦʔζɾ य़ͷάϥϑσʔλಛू
άϥϑߏσʔλ ˙ σʔλߏͷछྨ • ྻ <ελοΫΩϡʔ> • ࿈ྻ <ϋογϡςʔϒϧϧοΫΞοϓςʔϒϧ> •
ઢܗϦετ • ߏ • άϥϑ ˙ ۙʹ͋Δάϥϑߏ • మಓ࿏ઢ • ίϯϐϡʔλωοτϫʔΫ • Ոܥਤʢߏʣ • 4/4ͷGPMMPXGPMMPXJOHͷؔ Կ͔ͷωοτϫʔΫ ·ͨ Կ͔ͷ૬ؔؔ
άϥϑཧͷ༻ޠΛ͢͜͠ • ϊʔυʢʣͱΤοδʢลʣ • ༗άϥϑͱແάϥϑ • ΤοδʹॏΈ͚͕Ͱ͖Δ • ୯७άϥϑͱଟॏάϥϑ
"NB[PO/FQUVOF ݄ʹൃද͞Εͨ"NB[PO71$ͰՔಇ͢Δάϥϑσʔλ ϕʔεɻݱࡏݶఆϓϨϏϡʔ൛͕ެ։͞Ε͍ͯΔɻ
͓ஈ IUUQTBXTBNB[PODPNKQOFQUVOFQSJDJOH 42-4FSWFSͷ΄͏ͱಉ͘͡Β͍ͷՁ֨ઃఆ ˞ϓϨϏϡʔظؒதແྉͰ͢
ʢͪΐͬͱدΓಓʣطଘͷάϥϑσʔλϕʔε ˙ ϓϩύςΟάϥϑϞσϧɾɾɾͦΕͧΕಠࣗͷΫΤϦจ๏Λ࣋ͭ • /FPK IUUQTOFPKDPN FUDʜ ˙ 3%'Ϟσϧɾɾɾ8$ඪ४ͷ3%'Ϟσϧͱ41"32-ΫΤϦΛ͏ •
7JSUVPTP IUUQTWJSUVPTPPQFOMJOLTXDPN • 'VTFLJ IUUQTKFOBBQBDIFPSHEPDVNFOUBUJPOTFSWJOH@EBUB https://neo4j.com/developer/guide-data-modeling/ Apache TinkerPop / Gremlin
"NB[PO/FQUVOFͷಛ ˙ ϓϩύςΟάϥϑɾ3%'ͷ྆ํ͕͑Δ άϥϑͷදݱͱ͍߹ΘͤͷͨΊʹɺͭͷΦʔϓϯͳۀքඪ४Λαϙʔτ͠·͢ɻ (SFNMJOʹΑͬͯ߹ͤՄೳͳ"QBDIF5JOLFS1PQޓͷϓϩύςΟάϥϑɻ (SFNMJOϊʔυ ʹͭͳ͕ΔΤοδ ล ΛݸผʹͨͲΔ୳ࡧΛ࣮ݱ͢Δάϥ
ϑ୳ࡧݴޠͰ͢ɻ41"32-ʹΑͬͯ߹ͤՄೳͳ 3%' 3FTPVSDF%FTDSJQUJPO 'SBNFXPSL ɻ ˙ ఆ͍ͯ͠Δ༻్ 4/4ɺϨίϝϯσʔγϣϯΤϯδϯɺܦ࿏Ҋɺྲྀ࠷దԽɺࣗಈஅɺ৵ೖݕ ήϊϜྻܾఆͳͲͷΞϓϦέʔγϣϯ͕ྫʹڍ͛ΒΕ·͢ɻ https://aws.amazon.com/jp/blogs/news/amazon-neptune-a-fully-managed-graph-database-service/
ͬͦͬͯ͘͞ΈΔ ͜͜ʹ͋Γ·ͤΜ खಈͰΞΫηεʂ IUUQTBXTBNB[PODPNKQOFQUVOF ʮϓϨϏϡʔʹαΠϯΞοϓʯ͔Βਃ͠ࠐΈ·͢ɻ ͘Β͍Ͱϝʔϧ͕ಧ͖·ͨ͠ɻ
ڥߏங ϢʔβʔΨΠυʢӳޠʣ IUUQTEPDTBXTBNB[PODPNKB@KQOFQUVOFMBUFTUVTFSHVJEFJOUSPIUNM IUUQTEPDTBXTBNB[PODPNKB@KQOFQUVOFMBUFTUVTFSHVJ EFHFUTUBSUFEQSFSFRVJTJUFTIUNM • &$Πϯελϯε͔Β/FQUVOFͷ%#ΫϥελʔʹΞΫηε • σʔλΛϑΝΠϧ͔Βϩʔυ͢ΔͳΒ4ඞཁ •
ͦΕͧΕʹඞཁͳΞΫηεݖݶΛ༩ ˞&$4ແྉͰͳ͍Ͱ͢
ڥߏஙμΠδΣετ ͱʹ͔͘શ෦ʮόʔδχΞ෦ VTFBTU ʯʹ࡞͍ͬͯͩ͘ʂ ͦ͜ʹ͔͠/FQUVOF͋Γ·ͤΜʂʂ 71$ͱ &$Πϯελϯεͷ࡞ *".ͰϢʔβʔ࡞Δ
ڥߏஙμΠδΣετ /FQUVOFͷΠϯελϯε /FQUVOFͷίϯιʔϧͰ࡞Δ
ڥߏஙμΠδΣετ
ڥߏஙμΠδΣετ /FQUVOFͷ%#Ϋϥελʔ͕Ͱ͖ͨΑʔ ϓϩϏδϣχϯάʹʙ͘Β͍͔͔Γ·ͨ͠ɻ
)FMMP/FQUVOF &$Πϯελϯεʹ44)ͰϩάΠϯɺ /FQUVOFͷΤϯυϙΠϯτʹΫΤϦΛ1045ͯ͠ΈΔɻ ۭͬΆͳͷͰɺۭͷྻ͕ฦ͖ͬͯ·ͨ͠ɻ͜ΕͰ0,ʂ
σʔλͷϩʔυ • 4ʹόέοτΛ༻ҙʢόʔδχΞ෦ʂʣ • /FQUVOF͔ΒಡΈࠐΊΔΑ͏ʹݖݶ༩ • ϑΝΠϧΛ4ʹΞοϓϩʔυ
ࣗͷσʔλͰͬͯΈͨ 3%'Ϟσϧ Q13952 P23511 Activation 2,721 nodes 43,228 edges
• ߦͷ3%'ϑΝΠϧ .# Λ4ʹΞοϓϩʔυ • &$ίϯιʔϧ͔Βɺ4্ͷσʔλΛ/FQUVOFʹϩʔυͤ͞Δ • ඵҎԼͰ/FQUVOFʹΠϯαʔτྃ
ࣗͷσʔλͰͬͯΈͨ 41"32-ΫΤϦ curl -X POST --data-binary 'query=PREFIX uniprot: <http://www.uniprot.org/uniprot/>
SELECT (COUNT(DISTINCT ?prot2) as ?count) WHERE {uniprot:P00533 uniprot:activate ?prot1. ?prot1 uniprot:activate ?prot2 .}' http://neptuneinstance-cluster.cluster-cumqwp3crwyp.us-east-1- beta.rds.amazonaws.com:8182/sparql ˙ ͋Δϊʔυ *%1 ͷ࣍ͷ࣍ͷϊʔυΛશͯऔಘʢͯ͠Χϯτʣ ΤϯυϙΠϯτʹ41"32-ΫΤϦΛ͛Δ ϊʔυ͕ඵҎԼͰฦ͖ͬͯͨɻ
·ͱΊ • άϥϑߏσʔλάϥϑσʔλϕʔεʹೖΕͯΈΔ • طଘͷπʔϧಋೖͷϋʔυϧ͕ߴ͍PS҆ఆ͠ͳ͍ɻʢݸਓͷҙݟͰ͢ʣ • ͦ͜Ͱ"NB[PO/FQUVOF !όʔδχΞ෦ • ϑϧϚωʔδυ
• εέʔϧͰ͖ΔʢεϞʔϧελʔτՄೳʣ • ϓϩύςΟάϥϑͱ3%'ͷ྆Ϟσϧ͕͑Δ • े࣮༻ϨϕϧʂʢݸਓͷҙݟͰ͢ʣ