5. 5
Architecture
Front-End Cluster
Web
250 racks
Ads 30 racks
Cache (~144TB)
Multifeed 9 racks
Other small services
Five Standard Servers
Service Cluster Back-End Cluster
Search Photos Msg Others UDB ADS-DB Tao Leader
“Flash at Facebook”,
Flash Summit 2013
Standard
Systems
I
Web
III
Database
IV
Hadoop
V
Photos
VI
Feed
CPU High
2xE5*2670
High
2xE5*2660
High
Low High
2xE5*2660 2xE5*2660
Memory Low High
144GB
Medium
64GB Low High
144GB
Disk Low HighIOPS
3.2TBFlash
High
15x4TBSATA
High
15x4TBSATA Medium
Services Web,Chat Database Hadoop
(bigdata) Photos,Video MulPfeed,
Search,Ads
6. Open Compute Project
6
• コモディティ製品の利利⽤用から、ユーザ主導の設計へ
• 2011年年4⽉月に⽶米フェイスブックが、同社データセンター
におけるサーバや設備の仕様をオープンソース化
• ⼤大規模データセンターの集積度度や省省エネルギー性の向上
– Industry Standard: 1.9 PUE
– Open Compute Project: 1.07 PUE
• サーバ、ストレージ、ラック、ネット
ワークスイッチ、データセンター設計
などに関する仕様が公開
• 製品化の開始:Quanta Rackgo X,
GIGABYTE DataCenter Solution
Open Compute Rack v2(右図)
17. (歴史的)不不揮発メモリ
15
A 32 x 32 core memory
plane storing 1024 bits
of data [Wikipedia]
A drum memory of Polish
ZAM-‐‑‒41 computer [Wikipedia]
→コアダンプの由来
→/dev/drum
(スワップデバイス)の由来
20. “RRAM Opportunity for High density memory application”,
S. Chung@SK hynix, Flash memory summit 2014.
2013 FMS, RRAM session
18
RRAM Potentials
ƒ Requirements for SCM
• Non-volatile, byte accessible
• High capacity + Short latency + Wide B/W @ moderate power
ƒ ReRAM is a good candidate
• Smaller power consumption than PRAM (I_reset 1/3)
• Cross Point Array (XPA) + Multi-Level Stacking (MLS)
Flash Memory Summit 2014
Santa Clara, CA 4
21. “Prospect for New Memory Technology”,
S. W. Park@SK hynix, Flash memory summit 2012.
Drop in Replacement
▶ Compatible Interface with Conventional Memory
(DDRx / LPDDRx)
Cost Power (vs. DRAM)
▶ Cost Down No Refresh-Power
(Scalability Non-Volatile)
Reliability Performance (vs. NAND)
▶ Implement Native High IOPS
(Byte Operation, Better than NAND Reliability)
10
SCM
DRAM
(Cost, Power)
*) New memory technology should meet at least one of requirements
Reliability Performance
Density
New Memory : Requirements
DRAM
(Cost, Power)
NAND
(Reliability)
19
22. 計算機アーキテクチャと
不不揮発メモリ
20
CPU
NVRAMDRAM
CPU
NVRAM
DRAM
CPU
NVRAM
(A) Replace disk(B) Shared address space(C) Entirely NVRAM
※EverspinのSTT-‐‑‒MRAMはDDR3互換
インタフェースで接続
23. Storage Class Memory (1)
Phillip Mills (IBM), “Storage Class Memory –
the Future of Solid State Storage,” SNIA 2009
21
12
SCMRequirement
Ꮫ165 @ᮾ
ExpectedFuture
SRAM
NANDFlash
HDD
5ns
50ns
1ms
10ms
DRAM
SCM
z SCMismainapplicationforReRAM
technologies
z SCMRequirement
z Performance
BetweenDRAMandNAND
z Density(bitcost)
BetweenDRAMandNAND
In2015,
Keyaspectistorealizeatleast16Gbit astheproduct
bits
4G
128G
Memory positionApplication Usage
byte
addressing
block
addressing
24. Storage Class Memory (2)
※出典
ストレージインタフェースを採⽤用する限り、
不不揮発性メモリの⾼高速化のメリットは⼩小
→ OpenNVM, Linux Persistent Memory
(DAX, etc)
22
12
SCMRequirement
Ꮫ165 @ᮾ
ExpectedFuture
SRAM
NANDFlash
HDD
5ns
50ns
1ms
10ms
DRAM
SCM
z SCMismainapplicationforReRAM
technologies
z SCMRequirement
z Performance
BetweenDRAMandNAND
z Density(bitcost)
BetweenDRAMandNAND
In2015,
Keyaspectistorealizeatleast16Gbit astheproduct
bits
4G
128G
HardwareFile SystemSystem call
HDD6900μs
SSD100μs4μs1μs
New NVMs5μs
※筒井(ソニー)”⾼高速ReRAMの応⽤用技術,” 学振165, 2014
25. 不不揮発メモリとOS研究
• 夢の?単⼀一記憶(ワンレベルストア)
– メモリ=ストレージ
– ページキャッシュは不不要
– ページングも不不要? 保護の仕組みは?
• 不不揮発ならではの悩み
– プログラムのライフサイクル管理理(起動、停⽌止、更更
新)への影響
– セキュリティを考慮すると、明⽰示的な消去も必要
23
K. Bailey, L. Steven, D. Gribble, H. Levy, Operating System
Implications of Fast, Cheap, Non-‐‑‒Volatile Memory, HotOS11
26. 関連研究
• ファイルシステム
– Unioning of the buffer cache and journaling layers
[FAST13]
– Byte addressable file system (BPFS) [SOSP09]
• ストレージ
– Whole-‐‑‒system persistence [ASPLOS12]
– NV-‐‑‒Heap [ASPLOSS11]
– Mnemosyne [ASPLOS11]
• プロセスの永続化
– NV-‐‑‒Process [APSys12]
• Linux kernel
– Block I/F: NVMeドライバ
– Memory I/F: PMFS、DAX
24
27. OS研究とDB研究
• 70〜~80年年代:UNIX
– Ingres(PostreSQLの先祖)
• double buffering問題
• “Operating System Support for Database Management,”
M. Stonebraker, CACM, Vol.24, No.7, July 1981
• 90年年代:マイクロカーネル
– ライブラリOS(e.g., exokernel)
– 64ビット単⼀一アドレス空間OS(e.g., Opal)
– オブジェクト指向DB
• プログラミング⾔言語のオブジェクトの永続化
• データ間のリンクをポインタで表現(Pointer swizzling)
• 2010年年代:仮想化、メニーコア化
– ビッグデータ処理理系(e.g., Hadoop)
• スケーラビリティ、耐障害性
25
28. DB専⽤用OSの可能性
• ライブラリOSの利利⽤用
– OSはホワイトボックスに
– c.f. データセンタ向けに特化した⾼高速I/Oを有する
ライブラリOS研究(e.g., Arrakis, IX [OSDI14])
– ⾼高い抽象度度のOS・VM間I/F
• OSはファイルシステムもネットワークスタック不不要
What is OSv?
Traditional Stack Thin OS
Java App
App Server
Hypervisor
Hardware
JVM
guest OS
C++ App
guest OS
App Server
OSv + JVM
Your App
Hypervisor
Hardware
Your App
OSv
26
OSOSOS
Tuple space (dKVS)
VMMVMMVMM