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
1
780
Swarm: The distributed storage platform
Hi-Ether Meetup Fukuoka #7
https://techplay.jp/event/686209
Keisuke Mori
August 17, 2018
Tweet
Share
More Decks by Keisuke Mori
See All by Keisuke Mori
AWSを使う上で意識しておきたい、クラウドセキュリティ超入門(駆け足版)
kkmory
1
400
[JAWS-SG#02] 個人開発やハッカソンで役立つ、便利APIのつくりかた
kkmory
0
140
rubyonjets_with_aws_for_research
kkmory
0
580
AWSで動画変換&配信基盤を作った話
kkmory
0
240
Slackであそぼ!!
kkmory
0
120
Git-study-Hackz-treasure
kkmory
1
260
飯塚ブロックチェーン勉強会 #1
kkmory
0
140
Kindai_Blockchain_study01
kkmory
0
250
Other Decks in Technology
See All in Technology
toittaにOpenTelemetryを導入した話 / Mackerel APM リリースパーティ
cohalz
1
490
OTel meets Wasm: プラグイン機構としてのWebAssemblyから見る次世代のObservability
lycorptech_jp
PRO
1
300
継続戦闘能⼒
sansantech
PRO
0
220
AIとSREの未来 / AI and SRE
ymotongpoo
2
1.2k
libsyncrpcってなに?
uhyo
0
140
JNation 2025 - Quarkus for Spring Developers
edeandrea
PRO
0
110
エンジニアが組織に馴染むために勉強会を主催してチームの壁を越える
ohmori_yusuke
2
120
What's Next in OpenShift Q2 CY2025
redhatlivestreaming
1
800
Introduction to Bill One Development Engineer
sansan33
PRO
0
240
プラットフォームとしての Datadog / Datadog as Platforms
aoto
PRO
1
340
Cloud Run を解剖して コンテナ監視を考える / Breaking Down Cloud Run to Rethink Container Monitoring
aoto
PRO
0
110
Redmineの意外と知らない便利機能 (Redmine 6.0対応版)
vividtone
0
1.1k
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
298
21k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Producing Creativity
orderedlist
PRO
346
40k
The Cult of Friendly URLs
andyhume
78
6.4k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
The Cost Of JavaScript in 2023
addyosmani
49
8.1k
How to train your dragon (web standard)
notwaldorf
92
6k
Speed Design
sergeychernyshev
30
970
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͡Ί·ͨ͠ɻ
ίϛϡχςΟͭ͘Γͨ͘ͳ͍ʁ
ͭ͘Γ·͠ΐ͏ʂ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠