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
EFSへの書き込み速度を上げる(小ネタ)
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
hmatsu47
PRO
June 22, 2021
Technology
0
970
EFSへの書き込み速度を上げる(小ネタ)
JAWS-UG 浜松 AWS 勉強会 2021#6 2021/06/25
hmatsu47
PRO
June 22, 2021
Tweet
Share
More Decks by hmatsu47
See All by hmatsu47
IPv6 VPC の実装パターンをいくつか
hmatsu47
PRO
0
20
光ファイバーと IPv6 絡みの話
hmatsu47
PRO
0
25
AWS で試して学ぶ IPv6
hmatsu47
PRO
0
21
今年の MySQL/HeatWave ネタ登壇振り返り
hmatsu47
PRO
0
20
今年の DB ネタ登壇振り返り
hmatsu47
PRO
0
16
RDS/Aurora アップデート 2025
hmatsu47
PRO
0
30
YAPC::Fukuoka 2025 現地ハイブリッド参加の旅
hmatsu47
PRO
0
13
今年の FESTA で初当日スタッフ+登壇してきました
hmatsu47
PRO
0
22
攻略!Aurora DSQL の OCC(楽観的同時実行制御)
hmatsu47
PRO
0
14
Other Decks in Technology
See All in Technology
旅先で iPad + Neovim で iOS 開発・執筆した話
zozotech
PRO
0
100
プロポーザルに込める段取り八分
shoheimitani
1
650
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
プロダクト成長を支える開発基盤とスケールに伴う課題
yuu26
4
1.4k
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
210
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
480
Why Organizations Fail: ノーベル経済学賞「国家はなぜ衰退するのか」から考えるアジャイル組織論
kawaguti
PRO
1
200
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2.1k
SRE Enabling戦記 - 急成長する組織にSREを浸透させる戦いの歴史
markie1009
0
170
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.6k
【Oracle Cloud ウェビナー】[Oracle AI Database + AWS] Oracle Database@AWSで広がるクラウドの新たな選択肢とAI時代のデータ戦略
oracle4engineer
PRO
2
180
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
610
Featured
See All Featured
Designing Powerful Visuals for Engaging Learning
tmiket
0
240
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
130
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
37k
Code Reviewing Like a Champion
maltzj
527
40k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
240
A Tale of Four Properties
chriscoyier
162
24k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
52k
How to build a perfect <img>
jonoalderson
1
4.9k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
190
Transcript
EFS への書き込み速度を上げる(小ネタ) JAWS-UG 浜松 AWS 勉強会 2021#6 2021/06/25 まつひさ(hmatsu47)
自己紹介 松久裕保(@hmatsu47) https://qiita.com/hmatsu47 名古屋で Web インフラのお守り係をしています (ほかに書くことがなくなったので省略) 2
今日の内容 • EFS とは • EFS は書き込みが遅い ◦ Amazon Linux
2 の /usr/ を普通に rsync ▪ 1 ゾーンで約 15 倍、標準(1 リージョン)で約 29 倍遅い • 処理を並列化してみると… ◦ xargs を使って並列で rsync ▪ 1 インスタンスの EC2 からのアクセスでも高速化が可能 3
EFS とは • フルマネージドの分散・共有ファイルシステム ◦ https://aws.amazon.com/jp/efs/ • NFSv4 プロトコルでアクセス可能 ◦
NFS v4.0 および v4.1 をサポート • 高可用性・高耐久性 ◦ 1 ゾーンストレージクラスと標準ストレージクラス ▪ 1 ゾーン内または 1 リージョン内で冗長化 ◦ 耐久性は 99.999999999% 4
EFS の弱点 • とにかく書き込みが遅い ◦ 分散・共有ファイルシステムなので… • 例えば、Amazon Linux 2
で普通に rsync してみると ◦ m5.large で /usr/(1.1GB)から別のファイルシステムにコピー rsync -avz /usr/ /mnt/【コピー先】/usr/ ◦ 対 EBS(gp3 IOPS:3000) : 00 分 54 秒 ◦ 対 EFS(1 ゾーン・バースト) : 13 分 51 秒(15.4 倍遅い) ◦ 対 EFS(標準・同) : 25 分 58 秒(28.9 倍遅い) 5
処理を並列化してみる • rsync を xargs と組み合わせる ls -1 /usr |
xargs -I {arg} -P 【並列数】 -n 1 rsync -avz /usr/{arg} /mnt/【コピー先】/usr/ 6 コピー先 通常(1 並列) 2 並列 4 並列 EBS(gp3 IOPS:3000) 00:54 - 00:42 - 00:39 - EFS(1 ゾーン・バースト) 13:51 15.4 倍遅い 09:09 13.1 倍遅い 06:23 9.8 倍遅い EFS(標準・同) 25:58 28.9 倍遅い 16:35 23.7 倍遅い 11:28 17.6 倍遅い
処理を並列化してみる 7
補足など • 並列数をもっと増やすとさらに高速化する ◦ m5.large (2vCPU)のように vCPU 数の少ないインスタンスで も 10
~ 16 並列ぐらいは行ける ▪ /usr/ 直下のディレクトリの数が少なく中のファイル容量や数のバランスが 悪いので今回は 4 並列まで(バランスが良いと線形に性能向上する) • 一部の NFS クライアントでは並列化の効果が出ない ◦ RHEL 6 など ◦ 処理を直列化してしまうため 8
参考:読み取り(find)並列化 • 通常 : find -type f -exec cat {}
\; • 並列 : find -type f -print0 | xargs -0 -I {arg} -P 【並列数】 -n 1 cat {arg} ※都度 OS を再起動し、OS のディスクキャッシュがクリアされた状態で計測 9 読み取り対象 通常 (1 並列) 2 並列 4 並列 8 並列 EBS(gp3 IOPS:3000) 00:46 00:24 00:17 00:16 EFS(1 ゾーン・バースト) 02:43 01:05 00:36 00:28 EFS(標準・同) 02:47 01:10 00:35 00:26
参考:読み取り(find)並列化 10
まとめ • 処理を並列化すると速くなる ◦ 1 インスタンスからのアクセスでも ◦ vCPU 数が少なくても ▪
一部 OS で速くならない点には注意 • 書き込みと読み取りでは少し傾向が違う ◦ EBS との差は読み取りのほうが小さい ◦ 読み取りでは 1 ゾーンと標準の性能差はない ▪ 帯域の上限に達するまでは 11