Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
データ冗長化のしくみ RAID ~冗長性が無いRAID0編~
Search
Satoru Takeuchi
PRO
June 07, 2024
Technology
2
110
データ冗長化のしくみ RAID ~冗長性が無いRAID0編~
以下動画のテキストです。
https://youtu.be/RzELZcEAODE
Satoru Takeuchi
PRO
June 07, 2024
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
eBPF
sat
PRO
1
93
waruiBPF
sat
PRO
0
88
eBPFとwaruiBPF
sat
PRO
4
2.6k
Pythonのコードの気になる行でスタックトレースを出す
sat
PRO
0
87
ソースコードを読むときの思考プロセスの例 ~markdownのレンダリング方法を知りたかった2 markdownパッケージ~
sat
PRO
0
170
様々なファイルシステム
sat
PRO
0
320
ソースを読む時の思考プロセスの例-MkDocs
sat
PRO
1
410
ソースを読むプロセスの例
sat
PRO
22
17k
メモリマップトファイル
sat
PRO
1
170
Other Decks in Technology
See All in Technology
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
440
100以上の新規コネクタ提供を可能にしたアーキテクチャ
ooyukioo
0
220
Building Serverless AI Memory with Mastra × AWS
vvatanabe
0
200
20251222_サンフランシスコサバイバル術
ponponmikankan
2
130
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
740
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
4
760
20251218_AIを活用した開発生産性向上の全社的な取り組みの進め方について / How to proceed with company-wide initiatives to improve development productivity using AI
yayoi_dd
0
580
コンテキスト情報を活用し個社最適化されたAI Agentを実現する4つのポイント
kworkdev
PRO
1
1.8k
[Data & AI Summit '25 Fall] AIでデータ活用を進化させる!Google Cloudで作るデータ活用の未来
kirimaru
0
150
Strands AgentsとNova 2 SonicでS2Sを実践してみた
yama3133
1
1.5k
Fashion×AI「似合う」を届けるためのWEARのAI戦略
zozotech
PRO
2
1.1k
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
460
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.7k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
0
40
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Applied NLP in the Age of Generative AI
inesmontani
PRO
3
1.9k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.3k
Thoughts on Productivity
jonyablonski
73
5k
Scaling GitHub
holman
464
140k
Why Our Code Smells
bkeepers
PRO
340
57k
How to train your dragon (web standard)
notwaldorf
97
6.4k
What does AI have to do with Human Rights?
axbom
PRO
0
1.9k
RailsConf 2023
tenderlove
30
1.3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Transcript
データ冗長化のしくみ RAID ~ 冗長性が無いRAID0編~ Jun. 7th, 2024 Satoru Takeuchi X:
satoru_takeuchi 1
はなすこと • RAIDの一種と言われたり「いや違う」と言われたりするRAID0の説明 • 何が嬉しいのか • なぜRAIDじゃないと言われることがあるのか • 注: RAIDはLinux
RAIDで実現しているものとします 2
RAID0 • 複数のディスクを束ねることによって高速なデバイスを構築する技術 • デバイスへのアクセスを複数台のディスクへの並列アクセスによって実現できるの で高速 3
RAID0のデータ配置方法 • RAID0デバイス上のデータは所定の長さのチャンクに区切る • チャンクは複数のディスクに順番に配置される • 例) 2台のディスクsda,sdbから構成したRAID0デバイスdm-0 4 dm-0
sda sdb A B C D A C B D
データアクセス方法 • シーケンシャル書き込みを例に説明 • 仮定 ◦ ディスクsda,sdbからRAID0デバイスdm-0を構成している ◦ チャンクサイズは100MiB ◦
ディスクのシーケンシャル書き込み速度は 100MiB/s • やること: 400MiBのデータをdm-0に書き込む ◦ sdaに直接書き込む場合は、完了まで 4秒(=400/4)かかる ◦ dm-0への書き込みの場合は 4秒より短くなるのだろうか ? 5
初期状態 • メモリの中にデータA,B,C,Dがある • それぞれサイズはチャンクサイズと同じ100MiB • A,B,C,Dをdm-0にシーケンシャルに書き込む 6 dm-0 sda
sdb メモリ A B C D 0~ 100MiB~ 200MiB~ 300MiB~ 0~ 100MiB~ 0~ 100MiB~
前半 1. dm-0のドライバがsdaにAを書き込むよう指示 2. dm-0のドライバがsdbにBを書き込むよう指示 3. dm-0のドライバがA,Bの書き込み完了を待つ 7 dm-0 sda
sdb メモリ A B C D 0~ 100MiB~ 200MiB~ 300MiB~ 0~ 100MiB~ 0~ 100MiB~
前半 1. dm-0のドライバがsdaにAを書き込むよう指示 2. dm-0のドライバがsdbにBを書き込むよう指示 3. dm-0のドライバがA,Bの書き込み完了を待つ 8 dm-0 sda
sdb メモリ A B C D 0~ 100MiB~ 200MiB~ 300MiB~ 0~ 100MiB~ 0~ 100MiB~ ここは一瞬で終わる
前半 1. dm-0のドライバがsdaにAを書き込むよう指示 2. dm-0のドライバがsdbにBを書き込むよう指示 3. dm-0のドライバがA,Bの書き込み完了を待つ 9 dm-0 sda
sdb メモリ A B C D 0~ A 100MiB~ B 200MiB~ 300MiB~ 0~ A 100MiB~ 0~ B 100MiB~ ここは1秒かかる。 100MiB/sのsda,sdbにそれぞれ 100MiBを書き込むため
後半 1. dm-0のドライバがsdaにCを書き込むよう指示 2. dm-0のドライバがsdbにDを書き込むよう指示 3. dm-0のドライバがC,Dの書き込み完了を待つ 10 dm-0 sda
sdb メモリ A B C D 0~ A 100MiB~ B 200MiB~ 300MiB~ 0~ A 100MiB~ 0~ B 100MiB~
後半 1. dm-0のドライバがsdaにCを書き込むよう指示 2. dm-0のドライバがsdbにDを書き込むよう指示 3. dm-0のドライバがC,Dの書き込み完了を待つ 11 dm-0 sda
sdb メモリ A B C D 0~ A 100MiB~ B 200MiB~ 300MiB~ 0~ A 100MiB~ 0~ B 100MiB~ ここは一瞬で終わる
後半 1. dm-0のドライバがsdaにCを書き込むよう指示 2. dm-0のドライバがsdbにDを書き込むよう指示 3. dm-0のドライバがC,Dの書き込み完了を待つ 12 dm-0 sda
sdb メモリ A B C D 0~ A 100MiB~ B 200MiB~ C 300MiB~ D 0~ A 100MiB~ C 0~ B 100MiB~ D ここは1秒かかる。 100MiB/sのsda,sdbにそれぞれ 100MiBを書き込むため
結果 • 合計所要時間は2秒程度 • 単一ディスクの場合(4秒)に比べて2倍高速になった • 説明は省略するが、シーケンシャル読み出し、ランダム読み書きともに2倍程度高 速化できることがある • RAID0を構成するデバイスの数を増やせば、さらに高速化
◦ 📝: ドライバによるI/O発行処理に時間がかかるようになってくるなどの事情でディスク数に応じて線 形に速度向上…とはいかない 13
RAID0の弱点 • n台のディスクのうち1台でも壊れたらデータを失うので、RAID0を構成するディスク 数が増えれば増えるほどデータを失うリスクは高まる • RAIDは”Redundant Arrays of Inexpensive Disks”の略なのに冗長性
(redundancy)が無い! • なので「RAID0はRAIDではない」と言われることも 14
📝ベンチマーク記事で愛されるRAID0 • 新型のディスクが出るたびに「RAIDを組んだときの性能は云々」と書かれているも のはRAID0のことがよくある • RAID0はディスク単品を大幅に上回る性能が出て見栄えがするからかも ◦ 例: 「3GiB/sのディスクを4枚束ねて10GiB/s以上を達成!」 •
RAIDは高速化技術ではなく、あくまで冗長化技術なことに注意 15
まとめ • RAID0は複数のディスクを束ねて高速なデバイスを構築する技術 • Redundancy(冗長性)は無い 16