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
Swarm: The distributed storage platform
Search
Keisuke Mori
August 17, 2018
Technology
840
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Swarm: The distributed storage platform
Hi-Ether Meetup Fukuoka #7
https://techplay.jp/event/686209
Keisuke Mori
August 17, 2018
More Decks by Keisuke Mori
See All by Keisuke Mori
AWSを使う上で意識しておきたい、クラウドセキュリティ超入門(駆け足版)
kkmory
1
430
[JAWS-SG#02] 個人開発やハッカソンで役立つ、便利APIのつくりかた
kkmory
0
160
rubyonjets_with_aws_for_research
kkmory
0
620
AWSで動画変換&配信基盤を作った話
kkmory
0
260
Slackであそぼ!!
kkmory
0
140
Git-study-Hackz-treasure
kkmory
1
300
飯塚ブロックチェーン勉強会 #1
kkmory
0
150
Kindai_Blockchain_study01
kkmory
0
270
Other Decks in Technology
See All in Technology
Terraform共通モジュールをチーム横断で“変えられる”運用へ ― リリースと適用の分離
kekke_n
1
3.3k
kintone の AI コワーカーを、 Anthropic にエージェントを"ホストさせて"作った話 #devkinmeetup
sugimomoto
0
110
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.4k
CIで使うClaude
iwatatomoya
0
290
公式ドキュメントの歩き方etc
coco_se
1
120
「AIに依存している」と 「AIを使いこなしている」の違い
k8yasuma
0
110
SRE本の知られざる名シーン / The Hidden Gems of Google SRE Book
nari_ex
1
420
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
生成AI×AWS CDK×AWS FISで"振り返れる"ミニGameDayをつくろう
yoshimi0227
1
360
関数型の考えを TypeScript に持ち込んで、テストしやすい純粋関数を増やす / Pure at the Core, Effects at the Edge: Bringing Functional Thinking into TypeScript
kaminashi
2
130
穢れた技術選定について
watany
17
5.4k
第67回コンピュータビジョン勉強会CVPR2026読会前編
tsukamotokenji
0
140
Featured
See All Featured
Building Applications with DynamoDB
mza
96
7.1k
AI: The stuff that nobody shows you
jnunemaker
PRO
8
830
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
550
Embracing the Ebb and Flow
colly
88
5.1k
How to train your dragon (web standard)
notwaldorf
97
6.7k
30 Presentation Tips
portentint
PRO
1
350
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
390
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
340
How GitHub (no longer) Works
holman
316
150k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
180
Agile that works and the tools we love
rasmusluckow
331
22k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Transcript
Swarm The distributed storage platform Hi-Ether Meetup Fukuoka #7
͡Ίʹ
ܒี!LNPSSSSZ ۙـେֶ࢈ۀཧֶ෦# $JSDVMBUJPO5FDIOPMPHZ-BC 4NBSU$POUSBDU 4FSWFSTJEF3BJMT (P 1)1
࿑ಇͷղܾΛࢦͯ͠ɺऔΓΜͰ͍͖·͢
ͯ͞ɺࢄετϨʔδͷΛ
ࢄετϨʔδΓ͍ͨͰ͢ΑͶʁ
11Ͱଓ͞Εͨϊʔυ্ͰϑΝΠϧΛڞ༗ 11ωοτϫʔΫʹΞοϓϩʔυ͞ΕͨϑΝΠϧΛஅยԽ͠ɺ֤ϊʔυʹ ࢄͯ͠ஔ͢Δ͜ͱͰোੑΛߴΊΔˠ୯Ұোͷ͕ͳ͍ ωοτϫʔΫ্ͷϊʔυ͕Մಈ͠ଓ͚ΔݶΓɺϑΝΠϧγεςϜΛఏڙ͠ ଓ͚Δ͜ͱ͕Ͱ͖Δ -FHBDZɿ8JOOZ #JU5PSSFOU .PEFSOɿ*1'4
4XBSN 4UPSK 4JB 'JMFDPJOʜ ࢄϑΝΠϧγεςϜ
*OUFS1MBOFUBSZ'JMF4ZTUFN 11ωοτϫʔΫ্Ͱಈ࡞͢ΔϋΠύʔϝσΟΞϓϩτίϧ ίϯςϯπࢦ ɹʔ888ͷΑ͏ͳϩέʔγϣϯࢦͰͳ͍ ɹɹ&YFYBNQMFDPNIPHFGVHBIUNM ɹʔॴͰͳ͘ɺίϯςϯπͷ༰Λࢦఆͯ͠ΞΫηε͢Δ ɹɹίϯςϯπͷϋογϡΛίϯςϯπ*%ͱͯ͠ར༻ ɹɹίϯςϯπͷϋογϡΛࢦఆ͠ɺͦͷίϯςϯπ͕͋Δʮॴʯࢦఆ͠ͳ͍
ɹɹෛՙࢄɺোੑɺݕӾੑɺվળੑ *1'4
4XBSN
&UIFSFVNͷϓϩτίϧΛͬͨࢄετϨʔδϓϥοτϑΥʔϜ 1SPPGPG$PODFQUWFS͕։ൃத 4XBSN
ɾ&UIFSFVNXFCTUBDLͷͭ ɾίϯςϯπࢦ ɾಛఆͷαʔόʔͰϗετ͞Εͳ͍ ɾେ͖ͳσʔλ$IVOLͱׂͯͯ͠͠อଘ ɾθϩఀࢭ࣌ؒɺෛՙࢄɺোੑɺݕӾੑɺվળੑ ɾ&/4ʹΑΔυϝΠϯղܾ ɾӬٱʹόʔδϣϯཧ͞Εͨίϯςϯπ 4XBSN֓ཁ
͘ଊ͑Δͱ΄΅ಉ͡ͷͱଊ͑ͯྑ͍͕ɺͱ͜ΖͲ͜Ζҧ͏ ͲͪΒ։ൃ్தʢ1P$ʣ *1'4ͱ4XBSN *1'4 4XBSN 11ϥΠϒϥϦ MJCQQ EFWQQ
໊લղܾ *1/4 &/4 ϒϥδϯά HBUFXBZJQGTJPYYY MPDBMIPTUC[[YYY ΠϯηϯςΟϒ ʔ 1P$ͰՃ༧ఆ *1'4ͱ4XBSNͷओͳ૬ҧ
4XBSNͷετϨʔδ୯ҐͰ͋ΔɺαΠζ͕ݶఆ͞Εͨσʔλɻ ωοτϫʔΫDIVOLΛೝࣝ͠ɺϑΝΠϧίϨΫγϣϯͷ֓೦ Λ࣋ͨͳ͍ɻDIVOL,#ɻ ߏ DIVOL SFGFSFODF ίϯςϯπʹ༩͞ΕΔҰҙͷࣝผࢠɻ ඇ҉߸ԽɿIFYCZUFͰγϦΞϥΠζ͞ΕͨCZUFͷϋογϡ
҉߸ԽɹɿίϯςϯπΞυϨε CZUF ʴ෮߸Խݤ CZUF NBOJGFTU ϑΝΠϧίϨΫγϣϯΛهड़͢Δσʔλߏɻ σΟϨΫτϦ͝ͱΞοϓϩʔυ͢Δ࣌ʢ&Y8FCϖʔδʣʹɺ ϑΝΠϧͷϚοϐϯάΛఆ͍ٛͯ͠Δ
ಉҰσΟϨΫτϦͷ'JMFUYU 'JMFUYU 'JMFUYUΛΞοϓϩʔυ ϑΝΠϧΞΫηεʢC[[ʣ MPDBMIPTUC[[IBTIYYYYYYYYYY'JMFUYU MPDBMIPTUC[[FYBNQMFFUI'JMFUYU σΟϨΫτϦͷϑΝΠϧҰཡʢC[[MJTUʣ MPDBMIPTUC[[MJTUIBTIYYYYYYYɹ
.BOJGFTUϑΝΠϧΛऔಘʢC[[SBXʣ MPDBMIPTUC[[SBXIBTIYYYYYYYɹ ϑΝΠϧΞΫηε
4XBSN"DDPVOUJOH1SPUPDPM શൠతͳΠϯηϯςΟϒཧ 4XBSNͷΠϯηϯςΟϒγεςϜͷίΞͱͳΔ ΠϯηϯςΟϒγεςϜʢ1P$ʣ 48"1 48&"3 4FDVSF8BZTPG&OTVSJOH"3DIJWBM $IVOL͕ͪΌΜͱอ࣋͞Ε͍ͯΔ͔Ͳ͏͔ɺ$IVOLͷ࣭Λ୲อ
48&"3ʹอূۚΛΤεΫϩʔͯ͠ΠϯηϯςΟϒΛड͚Δ 48*/%-& 4FDVSFE8JUI*/TVSBODF%FQPTJU-JUJHBUJPOBOE&TDSPX 48&"3Ͱక݁͞ΕͨίϯτϥΫτΛࢹ͠ɺΤεΫϩʔͨ͠อূۚ Λཧ͠ɺҧऀʹേଇΛ༩͑Δ
ࢀর࣮7FSTJPOY ͱΓ͋͑ͣ͞ΘͬͯΈΔ go get github.com/ethereum/go-ethereumgo cd $GOPATH/src/github.com/ethereum/go-ethereum/cmd install
./geth install ./swarm HPFUIFSFVNʹ࣮ࡁ geth account new geth --syncmode=light swarm --bzzaccount <your-account-here> ΒͤͯΈΔ
ͱΓ͋͑ͣ͞ΘͬͯΈΔ $ cd /Users/keisuke/go/swarm $ ls > File_1.txt
File_2.txt File_3.txt $ swarm --recursive up /Users/keisuke/go/swarm > c930e0ada49614c5465334923b9b8ab9a0d8ebe0d35bfaf0044dbc3ac9178f06 σΟϨΫτϦ͝ͱΞοϓϩʔυ $ swarm ls c930e0ada49614c5465334923b9b8ab9a0d8ebe0d35bfaf0044dbc3ac9178f06 > HASH CONTENT TYPE PATH 4c24fcac7c18851a5dd6a6a12fbdb7e9f7b634751d3a992c4bb15e27fe16ba45 text/plain; charset=utf-8 File_1.txt 4c24fcac7c18851a5dd6a6a12fbdb7e9f7b634751d3a992c4bb15e27fe16ba45 text/plain; charset=utf-8 File_2.txt d9403cc2dd48592d93dde0e5e296328c303206130f28f9822a0c89f35ddfe5e6 text/plain; charset=utf-8 File_3.txt Ξοϓϩʔυ͞Εͨ͜ͱΛ֬ೝ
:":
144 11ϝοηʔδϯάγεςϜ .VUBCJMJUZ &/4Λ௨ͯ͡ίϯςϯπΛมߋՄೳʹ '64&TVQQPSU 4XBSNσʔλΛϩʔΧϧϑΝΠϧγεςϜʹ౷߹ʢ-JOVY .BDʣ 1P$
IUUQTHJUIVCDPNPSHTFUIFSTQIFSFQSPKFDUT ϩʔυϚοϓ
ͳʹ͔࡞ͬͯΈ͍ͨͰ͢ΑͶ
͓ΘΓʹ
ֶੜϒϩοΫνΣʔϯΤϯδχΞ ૿ͨ͘͠ͳ͍ʁ
-*/&άϧʔϓlz͡Ί·ͨ͠ɻ
ίϛϡχςΟͭ͘Γͨ͘ͳ͍ʁ
ͭ͘Γ·͠ΐ͏ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠