• 検索結果がありません。

April 2014 Flash-aware MySQL フラッシュが MySQL を変える Takeshi Hasegawa Senior Sales Engineer APAC Japan Fusion-io

N/A
N/A
Protected

Academic year: 2021

シェア "April 2014 Flash-aware MySQL フラッシュが MySQL を変える Takeshi Hasegawa Senior Sales Engineer APAC Japan Fusion-io"

Copied!
22
0
0

読み込み中.... (全文を見る)

全文

(1)

Flash-aware MySQL

〜フラッシュが

MySQLを変える〜

(2)

不揮発メモリ

(NVM)の登場

フラッシュ

(NAND)

デバイスあたり数百

GB〜 10TBの容量

フラッシュ技術のトレンド

大容量化

GB単価コスト↓

書き込み回数の減少

セルの多値化(

SLC→MLC→3BPC)

10万〜100万IOPS, GB/s級の帯域幅

その他の不揮発メモリ技術(

PCM/MRAM/STT)

現時点では開発中のメモリ技術

(3)

なぜフラッシュを使うのか

?

I/O特性がデータベース用途に

適している

低レイテンシ、

QDの低いI/Oでも高性能

ワークロードの種類を問わず

性能が高い

ü

シーケンシャル ワークロード

ü

ランダム ワークロード

ü

様々なブロックサイズ

容量

IOPS

IO単価

4TB

3TB

150

200,000

$$$$

¢¢¢¢

(4)

フラッシュの利用方法の遷移

フラッシュ + ディスク ディスクとしてのフラッシュ フラッシュとしてのフラッシュ メモリとしてのフラッシュ

フラッシュの特性を意識した実装

(5)

ディスクとしてのフラッシュ

: そのスピードにチューニング

過去数年間の取り組みにより

大幅な性能向上を達成

データ配置の最適化、

NOOPスケジューラ、

シークなしメディアへの最適化、

並列度の最適化

ブロック

I/Oサブシステムの

高速化

高速なファイルシステムの探求

(6)

マルチインスタンス

MySQL: IOPS性能を絞り出す

Instances

1

2

4

T

hro

ug

hp

ut

, N

O

T

/1

0se

c

0 4000 6000 8000 10000 12000

Fusion-io, 48 threads, 2400W – 64GB BP

4810 8788 11952 2000

(7)

フラッシュとしてのフラッシュ

: ただのディスクとは違う

メトリック

ハードディスク

フラッシュメモリ

リード/ライト性能

リード/ライト、ほぼ対称

リード/ライト性能が非対称。

イレースという新たな操作が

登場

シーケンシャル/ランダムの

性能傾向

100倍の性能差。

ヘッドの動作を想定した

I/Oスケジューリング

〜10倍の性能差。

メモリ素子にはヘッド動作なし

ブロックのリマッピング、

バックグラウンドでの処理

極めて少ない

ログ構造のファイルシステムの

ように、定常的に発生

書き込み量の限界

ほぼ無し

制限あり

秒間あたりのI/O回数(IOPS)

100回〜1,000回/秒

10万回〜100万回/秒

レイテンシー(応答遅延)

10ミリ秒台

10〜100マイクロ秒台

(8)
(9)

“Flash-aware” スタックの構成

フラッシュストレージ –I/O と

新たなプリミティブ

(アトミックライト

PTRIMなど)

ファイルシステム

(XFS, Ext4, Btrfs,

NVMFS)

(10)

ダブルライト/アトミックライトの比較

従来の

MySQLのライト処理

アトミックライト対応版

MySQL

のライト処理

Page C Page B Page A バッファ DRAM バッファ SSD (もしくはHDD) データベース DBサーバ Page C Page B Page A Page C Page B Page A Page C Page B Page A アプリケーション がページA,B,Cを 更新する 1 MySQLは更新 されたページを バッファメモリに コピー 2 MySQLはダブルライト バッファに書き込む 3 ステップ3が完了し てから、MySQLは 表領域に書き込 みを開始する 4 ioMemory データベース Page C Page B Page A Page C Page B Page A アプリケーション がページA,B,Cを 更新する 1 MySQLは更新 されたページを バッファメモリに コピー 2 MySQLはダブルラ イトを省略し、表領 域に直接書き込み データの整合性は 下位デバイスの機 能により担保される 3 DBサーバ Page C Page B Page A DRAM バッファ

(11)

MySQL + アトミックライトの利点

ダブルライトを無効化(

Non-ACID)

ダブルライト

ACID

従来の場合

アトミックライトを利用する場合

ACID特性を維持したまま

二倍の性能を実現

アトミックライト(

ACID)

•  アトミックライトによりデバイス性能の99%を利用可能

•  デバイスの書き込み耐用期間が2倍に

(12)

0 20 40 60 80 100 120 140 160 180 200 1 107 213 319 425 531 637 743 849 955 1061 1167 1273 1379 1485 1591 1697 1803 1909 2015 2121 2227 2333 2439 2545 2651 2757 2863 2969 3075 3181 3287 3393 3499 Mi lli se co n d s Seconds

Sysbench 99% Latency

OLTP workload

XFS DoubleWrite

DirectFS Atomic

アトミックライト

: トランザクションのレイテンシー改善

トランザクションのレイテンシーが

2分の1〜4分の1まで短縮

Atomic Writes

(13)

NVM コンプレッション

フラッシュデバイスが持つ、内部的な

「シンプロビジョニング」動作を活用

データファイル上の不要ブロックを

TRIM(UMMAP)しホール(スパース)化

フラッシュ処理のマルチスレッド化、

アトミックライトによりレイテンシーを削減

プラグイン式で置き換え可能な

圧縮アルゴリズム

ioMemory VSL

NVMFS

MySQL

(14)

NVMコンプレッションの性能オーバーヘッドはごく僅か

100%

20%

90%

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

Uncompressed

Row Compression

NVM-Compression

(15)

NVMコンプレッションの性能オーバーヘッドはごく僅か

0 5000 10000 15000 20000 25000 30000 T ime 130 260 390 520 650 780 910 1040 1170 1300 1430 1560 1690 1820 1950 2080 2210 2340 2470 2600 2730 2860 2990 3120 3250 3380 3510

New Order TX

TPC-C like workload

1,000 warehouses - 75GB DRAM

MySQL uncompressed

MySQL compression

Fusion-io Compression

Time

(16)

圧縮により書き込み減少

→容量の有効利用、長寿命化

Row-comp

Page-comp

49.0%

58.5%

44.0% 46.0% 48.0% 50.0% 52.0% 54.0% 56.0% 58.0% 60.0%

%

im

p

ro

ve

m

en

t

Vs. Uncompressed *

*For LinkBench with lz77. Comparable results with lz4.

•  従来のInnoDBストレージ

エンジンの行ベース圧縮を

超える高圧縮率

•  デバイスの耐用期間が

アトミックライトと組み合わせで

最大4倍に

(17)

ファイルシステムからのミドルウェア高速化

POSIXインターフェイス

動作

fallocate(offset, len)

既存ファイル/テーブルスペースの容量追加、

プリアロケーション

fallocate(

PUNCH_HOLE

)

アンマップ(

Punch Hole)操作。

デバイスに対し

Persistent TRIMコマンド発行

io_submit()

非同期

I/Oで透過的にアトミックライトを実現

NVM コンプレッションは、POSIXインターフェイスで実現

(18)

NVMFS ー フラッシュメモリのためのファイルシステム

Non Volatile Memory FileSystem

(不揮発メモリ用ファイルシステム)

Fusion-ioが開発した、POSIX準拠のファイルシステム

利点

大きなファイルのプリアロケーションを効率的に実現

ファイルシステムを使い続けても、

”断片化”は発生しない

ファイルシステム経由でもデバイスの

I/O性能が落ちづらい

アトミックライトやファイル内

TRIMなどの機能を利用可能に

(19)
(20)
(21)

“Flash-aware MySQL” by Oracle

アトミックライト対応

Oracle MySQL >= 5.7.4

NVM コンプレッション対応

Oracle MySQL – labs release (http://labs.mysql.com/)

(22)

fusionio.com

|

DELIVERING THE WORLD’S DATA. FASTER.

参照

関連したドキュメント

 処分の違法を主張したとしても、処分の効力あるいは法効果を争うことに

Bでは両者はだいたい似ているが、Aではだいぶ違っているのが分かるだろう。写真の度数分布と考え

共通点が多い 2 。そのようなことを考えあわせ ると、リードの因果論は結局、・ヒュームの因果

このような情念の側面を取り扱わないことには それなりの理由がある。しかし、リードもまた

ているかというと、別のゴミ山を求めて居場所を変えるか、もしくは、路上に

ただし、このBGHの基準には、たとえば、 「[判例がいう : 筆者補足]事実的

当社は「世界を変える、新しい流れを。」というミッションの下、インターネットを通じて、法人・個人の垣根 を 壊 し 、 誰 もが 多様 な 専門性 を 生 かすことで 今 まで

人の生涯を助ける。だからすべてこれを「貨物」という。また貨幣というのは、三種類の銭があ