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
RAIDの実現方法
Search
Satoru Takeuchi
PRO
April 12, 2024
Technology
2
190
RAIDの実現方法
以下動画のテキストです
https://youtu.be/tfMKOlPL7TI
Satoru Takeuchi
PRO
April 12, 2024
Tweet
Share
More Decks by Satoru Takeuchi
See All by Satoru Takeuchi
Rook: Intro and Deep Dive With Ceph
sat
PRO
1
110
会社員しながら本を書いてきた知見の共有
sat
PRO
3
790
デバイスにアクセスするデバイスファイル
sat
PRO
1
38
ファイルシステムのデータを ブロックデバイスへの操作で変更
sat
PRO
1
32
デバイスドライバ
sat
PRO
0
49
マルチスレッドの実現方法 ~カーネルスレッドとユーザスレッド~
sat
PRO
2
120
共有メモリ
sat
PRO
3
71
マルチスレッドプログラム
sat
PRO
3
59
Linuxのブートプロセス initramfs編
sat
PRO
2
89
Other Decks in Technology
See All in Technology
american aa airlines®️ USA Contact Numbers: Complete 2025 Support Guide
aaguide
0
210
開発生産性を測る前にやるべきこと - 組織改善の実践 / Before Measuring Dev Productivity
kaonavi
10
4.7k
マネジメントって難しい、けどおもしろい / Management is tough, but fun! #em_findy
ar_tama
7
1.1k
生成AI活用の組織格差を解消する 〜ビジネス職のCursor導入が開発効率に与えた好循環〜 / Closing the Organizational Gap in AI Adoption
upamune
7
5.3k
Yahoo!しごとカタログ 新しい境地を創るエンジニア募集!
lycorptech_jp
PRO
0
110
開発生産性を組織全体の「生産性」へ! 部門間連携の壁を越える実践的ステップ
sudo5in5k
2
7.2k
面倒な作業はAIにおまかせ。Flutter開発をスマートに効率化
ruideengineer
0
260
Backlog ユーザー棚卸しRTA、多分これが一番早いと思います
__allllllllez__
1
150
Delegating the chores of authenticating users to Keycloak
ahus1
0
140
Flutter向けPDFビューア、pdfrxのpdfium WASM対応について
espresso3389
0
130
成長し続けるアプリのためのテストと設計の関係、そして意思決定の記録。
sansantech
PRO
0
120
品質と速度の両立:生成AI時代の品質保証アプローチ
odasho
1
360
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
Scaling GitHub
holman
460
140k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
Adopting Sorbet at Scale
ufuk
77
9.5k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
How STYLIGHT went responsive
nonsquared
100
5.6k
Code Review Best Practice
trishagee
69
18k
The Cult of Friendly URLs
andyhume
79
6.5k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
6
300
How to Think Like a Performance Engineer
csswizardry
25
1.7k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Transcript
RAIDの実現方式 Apr. 12th, 2024 Satoru Takeuchi X: satoru_takeuchi 1
はなすこと • RAIDのいろいろな実現方式 • RAIDレベル(1,10,5,6など)の話ではない 2
RAIDの形式とは • RAID機能をどのようなハードウェア、ソフトウェアが実現しているか • 3つの形式がある ◦ ハードウェアRAID ◦ ソフトウェアRAID ◦
fake RAID • ディスク2台で構成するRAID1デバイスを例に違いを説明 3
ハードウェアRAID • RAID機能を全てハードウェアによって実現 ◦ UEFI(BIOS)を使ってRAIDデバイスを構成、管理する ◦ RAID用データ領域のフォーマットはハードウェアによって異なる • 必要なソフトウェア ◦
カーネル内のRAIDコントローラ(RAIDカードなどに入っている )のドライバ • 2つのディスクI/O処理の流れ ◦ カーネルがRAIDコントローラに処理を依頼 ◦ RAIDコントローラが2つのディスクにI/Oを発行する • I/O性能はRAIDコントローラ次第 • デバイス名は/dev/sda, /dev/sdbなど、普通のデバイスと同じ 4
ソフトウェアRAID • RAIDを全てソフトウェアによって実現する ◦ 実装方法はOSによって異なるし、OS内でも実現方法は色々 ◦ LinuxのソフトウェアRAID(mdraid, Linux RAID)の場合 ▪
Linux上でmdadmコマンドによって構築、管理 ▪ RAID用データ領域のフォーマットは mdraid固有 ▪ デバイス名は/dev/mdX • 必要なソフトウェア ◦ カーネル内のソフトウェア RAIDのドライバ ◦ Linux上のコマンド(mdadmなど) • I/O処理の流れ ◦ カーネルのソフトウェア RAIDドライバが2つのディスクにI/O発行依頼 • I/O性能はCPU次第 5
fake RAID • RAID機能を一部ハードウェアで、その他多くをソフトウェアで実現 ◦ UEFI(BIOS)やLinux上のコマンドを使って RAIDデバイスを構成、管理する ◦ データフォーマットはハードウェアによって異なる •
別名がたくさんある: host RAID, BIOS RAID, chipset RAID… • カーネルに必要なもの ◦ fake RAIDのドライバ ◦ Linux上のコマンド(dmraid, mdadmなど) • I/O処理の流れ ◦ カーネルのドライバが fake RAIDのコントローラと連携して 2つのディスクにI/O発行依頼 ▪ ほとんど処理はドライバ (ソフトウェア)が実施 • I/O性能はCPU次第 • デバイス名は/dev/mapper/<チップセット名_ランダム文字列>など 6
まとめ • RAIDにはいろいろな実現方法がある • それぞれ一長一短 7 構築、管理 RAID領域の フォーマット 2つのディスクにI/Oを発
行する担当 ハードウェアRAID BIOS ハードウェア依存 ハードウェア ソフトウェアRAID Linuxのコマンド ソフトウェア依存 ソフトウェア fake RAID BIOS, Linuxのコマンド ハードウェア依存 ほぼソフトウェア