Osc 20130223
-
Upload
takahiro-yamagishi -
Category
Documents
-
view
815 -
download
1
Transcript of Osc 20130223
![Page 1: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/1.jpg)
![Page 2: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/2.jpg)
仰々しいタイトルをつけましたが
結局今日のテーマは・・・
![Page 3: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/3.jpg)
『ioDrive2 ってどうなの?』
![Page 4: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/4.jpg)
自己紹介、事業紹介
ioDriveができた理由
ioDrive とは?
ioDrive2 とは?
性能比較の結果
サイト構築について考察
ちょっと宣伝
![Page 5: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/5.jpg)
はじめに宣言します!
Fusion-io さん、間違いがあったりしても大目に見てください^^
![Page 6: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/6.jpg)
氏名:山岸隆広(やまぎしたかひろ)
所属:株式会社リンク
ディベロッパーサポート部
業務:インフラエンジニア、サービス開発
プロジェクトマネジメント
仕入れのディスカウント交渉
新しいネタ探し
![Page 7: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/7.jpg)
『エーティーリンク』と読みます。くれぐれも『アットリンク』とは読まないでください。
・株式会社エーティーワークスと株式会社リンクの協業で始めたので『エーティーリンク』です
・事業内容は簡単に言うとホスティング屋さんです。サーバレンタル事業者です。クラウドもやってます。
※最近、MSP っぽいことがふえてきてホスティング屋さんの領域をはみ出してきました。
http://www.at-link.ad.jp/
![Page 8: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/8.jpg)
一言でいうと
『CPUに比べ、メモリとストレージは大きなパフォーマンスギャップがある。CPUは処理するものがないために有休状態になっている。メモリはデータを扱うには小さすぎ、ディスクは提供のスピードが遅すぎる』
By Fusion-io社 フリン氏
これを解決するために開発された。
![Page 9: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/9.jpg)
これです。
![Page 10: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/10.jpg)
大規模SANストレージと同等の性能・信頼性をPCIeカード1枚で実現するNANDフラッシュベース高速半導体ストレージ
どういうこと?
![Page 11: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/11.jpg)
●高速化させるアーキテクチャ・PCIeバスに直接接続し、CPUとの距離を最短にした設計・CPUからフラッシュメモリへのホップ数を最小限にし、
データ処理プロセスを簡素化 (下図)
・ホストからフラッシュアレイにダイレクトにアクセス・メタデータ処理をホスト側にオフロード・24チャネルの広帯域処理、8バンクの並列処理により、
PCIeの有効帯域を最大限に活用
![Page 12: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/12.jpg)
今までの HDD での実行 step の数を減らし
処理開始から終了までの時間を短縮に成功!
![Page 13: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/13.jpg)
不揮発性記憶素子のフラッシュメモリの一種である。1987年に東芝が発明した。
回路規模が小さく、安価に大容量化できる。
また書き込みや消去も高速であるが、
バイト単位の書き替え動作は不得手である。
![Page 14: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/14.jpg)
1つのセルの浮遊ゲートにある電子の蓄積量、つまり電荷の量が"Hi"か"Low"かで1ビットの情報を記録する方式を「SLC」(Single Level
Cell)と呼ぶ。
また、電荷の量の違いを4つ以上の多値で
判断することで2ビット以上を記録する
方式を「MLC」(Multi Level Cell)と呼ぶ。
![Page 15: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/15.jpg)
●SLC
・書き込み速度が速い・書き換え可能回数(約10万回)・値段が高い
●MLC
・書き込み速度が遅い・書き換え可能回数(約1万回)・値段が安い
MLCタイプは、SLCタイプよりも書き込み耐性&速度で劣るものの、コントローラーの改良などで速度の改善されてきており、今後はMLCタイプが普及牽引していくものと思われる。
![Page 16: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/16.jpg)
なぜ、こんな話をし出したかというと
今日の話はioDrive → SLC
ioDrive2 → MLC
![Page 17: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/17.jpg)
これです。
![Page 18: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/18.jpg)
容量拡大。最大で2.4TB(前Ver.は320GB)
NANDフラッシュの高密度化、低価格化
→性能劣化とのことだが、
複数のチップでデータを分散処理させ、
コントローラー側のソフトウェアで
性能や信頼性を補っている
![Page 19: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/19.jpg)
ioDrive2 365GB
Read バンド幅 (1MB) → 910 MB/s
Write バンド幅 (1MB) → 590 MB/s
ioDrive2 785GB
Read バンド幅 (1MB) → 1.5 GB/s
Write バンド幅 (1MB) → 1.1 GB/s
![Page 20: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/20.jpg)
何はともあれ比べてみましょう^^
![Page 21: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/21.jpg)
次のコマンドで計測
hdparm –t “デバイス名”
-t パラメータでキャッシュしないモードで
純粋な読み込み速度を計測
30 回連続で計測して
上下 10% の値を外した平均
![Page 22: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/22.jpg)
0
100
200
300
400
500
600
700
SATA (7,200rpm) SAS (15,000rpm) ioDrive ioDrive2 365GB ioDrive2 785GB
スループット
MB/s
device
Sequential Read
あれ、ioDriveの方が勝ってる・・・?おそらく ioDriveは SLC、ioDrive 2はMLCなので、その差分かと思われ。。
![Page 23: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/23.jpg)
次のコマンドで再計測
fio seqread.sio
パラメータは
readwrite=read
blocksize=1m
size=1g
directory=“ディレクトリ名”
direct=1
loops=5
![Page 24: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/24.jpg)
Sequential Read 2回目
0
200
400
600
800
1000
1200
SATA (7,200rpm) SAS (15,000rpm) ioDrive ioDrive2 365GB ioDrive2 785GB
スループット
MB/s
device
ioDriveと ioDrive2 365GBがほぼ同じ、ioDrive2 785 GBは圧勝!
![Page 25: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/25.jpg)
次のコマンドで計測
dd if=/dev/zero of="出力ファイル名"
count=1024 bs="ブロックサイズ"
ddコマンドによって、ファイルを作成し、
ファイル生成完了までの時間を
測定しました。
![Page 26: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/26.jpg)
0.00
200.00
400.00
600.00
800.00
1000.00
1200.00
1400.00
1600.00
1800.00
4k 16k 64k 256k 1024k 4096k 16384k 65536k
スループット
MB/sec
ファイルサイズ
ioDrive2 785GB MLC
ioDrive2 365GB MLC
ioDrive 160GB SLC
SAS (15,000rpm)
SATA (7,200rpm)
Sequential Write
これは ioDrive2 の圧勝!カタログ値に近い値を記録!
![Page 27: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/27.jpg)
次のコマンドで計測
dbench -c "クライアントファイル名"
-D “ディレクトリ名" "同時接続数"
Dbenchは、NFSのエミュレーションを行う事が可能で、実際にファイルサーバを使っているような状況を再現することができることから、ランダムのRead/Writeを見るのに最適と言えます。
![Page 28: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/28.jpg)
Random Read/Write
これも ioDrive2の圧勝!!
0
500
1000
1500
2000
2500
3000
3500
4000
4500
5000
1 16 32 64 128
スループット
MB/sec
同時接続数
ioDrive2 785GB MLC
ioDrive2 365GB MLC
ioDrive 160GB SLC
SAS
SATA
![Page 29: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/29.jpg)
Sequential Read
ioDrive2 785GB は圧勝
ioDrive と ioDrive2 365GB は同じくらい
Sequential Write
ioDrive2 が圧勝
Random Read/Write
ioDrive2 が圧勝
![Page 30: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/30.jpg)
次のコマンドで計測
sysbench --test=oltp --db-driver=mysql --oltp-test-
mode=complex --oltp-table-size=1000000 --mysql-user=root --
mysql-password= --mysql-host=localhost --mysql-port=3306 --
mysql-db=test6 --max-time=180 --max-requests=0 --oltp-read-
only=off --oltp-dist-type=uniform --init-rng=on --num-threads="同時接続数" run
SysBenchという、MySQLのベンチマークソフトです。オンラインのショッピングサイトの処理、カートにものを入れたり、決済をしたりといった流れをシミュレートしたベンチマークです。
![Page 31: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/31.jpg)
MySQL OLTP性能
0
500000
1000000
1500000
2000000
2500000
3000000
3500000
2 4 8 16 32 64
クエリ数
同時接続数
ioDrive2 785GB MLC
ioDrive2 365GB MLC
ioDrive 160GB SLC
SAS
SATA
これも ioDrive2が勝ってる!!
![Page 32: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/32.jpg)
Sequential Read/Write
ioDrive2 は ioDrive と
同等もしくはそれ以上
Random Read/Write
ioDrive2の圧勝
MySQLの処理能力も同時接続数を増やしても性能が落ちない。
![Page 33: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/33.jpg)
一般的なwebサイトなら
フロントにwebアクセスを応答するための
サーバを並べ、ローカル通信可能な DB を
配置するが、やはり ioDrive はDB サーバ
として使うのがよい
![Page 34: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/34.jpg)
でもBut
しかし
![Page 35: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/35.jpg)
どういう風に使うかをやはり計算する必要があります!!
ioDriveは I/Oの性能を飛躍的に向上させますが、やはりメモリにキャッシュできるならキャッシュした方が早いからです!!
![Page 36: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/36.jpg)
たぶん一つのサーバで、大容量メモリを搭載しつつ、ioDrive2 も搭載する。
メモリに乗せられない部分は ioDrive2で
今までよりも高速に応答する!!
今こうならないのはメモリ、ioDrive2も
価格が高いから。。。
![Page 37: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/37.jpg)
at+link アプリプラットフォームでは現在ioDrive を採用してますが、2013年3月~4月からioDrive2
を採用する予定です!!
http://www.at-
link.ad.jp/appli_platform/
ちょっとだけ宣伝
![Page 38: Osc 20130223](https://reader030.fdocuments.net/reader030/viewer/2022020123/55acd0661a28ab43798b4583/html5/thumbnails/38.jpg)
ご清聴ありがとうございました。