[db tech showcase tokyo 2016] d13:...
TRANSCRIPT
NVMeフラッシュストレージを用いた 高性能・高拡張・高可用なデータベースシステムの実現方法 ~ExpEther技術の活用~
2016年7月13日 日本電気株式会社 システムプラットフォーム・ビジネスユニット IoT基盤開発本部 星野 智則 <[email protected]>
【ITPF事ーNBG-EE-160032-01】
3 © NEC Corporation 2016
自己紹介
星野 智則 NEC IoT基盤開発本部 新PF企画・開発グループ
▌略歴 2001年4月
日本電気株式会社に入社し 以降NEC一筋15年 Itaniumサーバ向け
チップセットの開発 ハイエンドXeonサーバ開発
⇒ 性能評価も担当 TPC性能 WW#1達成 現在はIoT基盤開発を担当
を軸として 各種アクセラレーション商材を用いた IoTを加速する基盤の創出がミッション
TPC協会認定監査人による監査報告書
4 © NEC Corporation 2016
HDDで高い性能を持つデータベースを構築するには
▌NECのTPC-C公表結果の一例 (公表日: 2008年1月21日)
1.2M tpmCの達成には 2000台以上のHDDが必要
(tpmC: 1分間あたりのトランザクション実行数)
アジェンダ
NVMeストレージとは
IoTアクセラレーション・プラットフォーム概要
ExpEther 技術概要 製品ラインナップ PG-Strome – GPUを用いたDB検索性能の向上 ユースケース/導入事例
共有NVMe SSDストレージ – ADS1000
7 © NEC Corporation 2016
HDD SSD PCIe
フラッシュ NVMe I/F SATA/SAS SATA/SAS PCIe PCIe 形状 3.5/2.5インチ 2.5インチ PCIeカード PCIeカード
/2.5インチ ドライバ AHCI/SCSI AHCI/SCSI プロプラ NVMe IOPS (4K Random Read)
100~200 1
10k~200k 100倍
100k~500k 1000倍
500k~1M 5000倍
バンド幅 (128K Seq Read)
200MB/s 1.0GB/s 3.0GB/s 4.0GB/s
レイテンシ 8ms 1ms 100us 100us
ストレージデバイスの進化
最先端のNVMe SSD 1台でHDD 5000台分のIOを処理可能
8 © NEC Corporation 2016
注目を集めるNVMeフラッシュストレージ
フラッシュの高速性を最大限に生かす PCIeに直結するストレージ フラッシュストレージ向けにプロトコルを最適化し高性能・低遅延を実現した
NVMe(Non-Volatile Memory Express) をI/F規格に採用 OSが標準サポート
2.5インチSSD型も仕様化済み
PCIeカード型 2.5インチSSD型
NVMe(Non-Volatile Memory Express)フラッシュストレージの特徴
各I/Fの最大帯域 SATA ⇒ 6Gbps, SAS ⇒ 12Gbps, NVMe ⇒ 32Gbps
最大同時コマンド発行数 SATA ⇒ 32コマンド, SAS ⇒ 64コマンド, NVMe ⇒ 65,535コマンド
Windows 8.1/Windows Server2012R2以降, Linux kernel 3.1以降 にNVMeネイティブドライバが内蔵(専用ドライバのインストール不要)
PCIeカード型は挿抜が困難だったが、 2.5インチSSD型を利用することで 従来のSSD/HDDと同様のディスクベイ を利用でき高い保守性を実現
9 © NEC Corporation 2016
SFF-8639 – 従来技術と高い互換性を確保
同一のコネクタでSATA/SAS/PCIe(NVMe)のすべてに対応
PCIe x4 シングルポートだけでなくPCIe x2 デュアルポートでの使用可能
出典: Enterprise SSD Form Factor Version 1.0a
11 © NEC Corporation 2016
IoTアクセラレーション・プラットフォーム
リアルタイム フィードバック 意思決定情報
IoTの進展により、多様な特徴を持つ様々なデータが、クラウドに集約
リアルタイム解析、ディープ・ラーニングなど、データの高速処理に対する需要増大により、GPUやFPGAなどのアクセラレータと高速ストレージであるNVMe SSDを活用したソリューションが進展
多種、多数のアクセラレータを、如何にホモジニアスなサーバ環境で効率良く運用するかが、クラウド・コンピューティングの大きな課題に…
GPU アクセラレータ FPGA NVMe SSD
12 © NEC Corporation 2016
IoT 5階層とアクセラレーション・プラットフォーム
広域ネットワーク
近距離ネットワーク
エッジコンピューティング
クラウドコンピューティング
デバイスコンピューティング
アクセラレータ・リソース・プール
NECが考えるIoTの5階モデル
CPUとIOデバイスを分離したIO分散リソースプールシステムを構築。デマンドに応じたシステムを動的に構成、アクセラレータの稼働率を向上し、TCOを劇的に削減。 サーバとGPUのライフサイクルの差分吸収にも。
アクセラレータ・スケールアウト
アクセラレータFPGA
従来、GPUなど搭載の難しかった小型エッジ・サーバにも、多数のアクセラレータを増設し、高速レスポンスを達成。 例:VRアクセラレータ
従来ソフトウェアで行っていた処理をFPGAで高速化。クラウドと連携して非力なCPUでも高速処理可能に。
データの 利活用
IoT連携 制御処理
実世界 との接点
http://jpn.nec.com/press/201511/20151109_01.html
13 © NEC Corporation 2016
IoTアクセラレーション・プラットフォームを支える技術
(エクスプレス・イーサー)
既存のハードウェア、ソフトウェア (OS, ドライバ)を一切変更することなく、PCI Expressバスを一般的なイーサネット上に拡張できるNECの独自技術
筐体・電源等の物理的制約を受けずにコンピュータ資源をスケールアップ
サーバ
CPU
メモリ
PCI Express
ExpEther カード
L2 Switch
標準 イーサネット
IO拡張筐体 PCIeカード
PCI Express
IOデバイス
ExpEther エンジン
ExpEther エンジン
14 © NEC Corporation 2016
ExpEtherによるIO分散システム
EE Client
USB/ VGA
KVM
CPU/ Chipset
CPU/ Chipset
Remote IO
GPU GPU GPU GPU
GPU GPU GPU Accelerator FPGA
NVMe SSD NVMe SSD NVMe SSD NVMe SSD
ExpEther Engines
NVMe SSD NVMe SSD NVMe SSD NVMe SSD
ExpEther Engines
NVMe SSD NVMe SSD NVMe SSD NVMe SSD
ExpEther Engines
NVMe SSD NVMe SSD NVMe SSD NVMe SSD
ExpEther Engines
ExpEther HBA
ExpEther HBA
ExpEther Engine
PCIe
PCIe PCIe
Ethernet
Ether Switch
ExpEther Engine
単純なリモートIOコンピューティングだけでなく、データセンターでのGPUやNVMe SSDなどの利用率向上のための、リソース・プール・システムの構成が可能
USB Ctrl
ExpEther Engines
ExpEther Engines
PCIe
PCIe
Sensors
Ether Switch
リソース・プール
要求に応じてIOデバイスを任意のサーバへ接続
Ether Switch
15 © NEC Corporation 2016
アクセラレータ・リソース・プールの活用例
Image Data
アクセラレーター・ リソース・プール
Image Processing
Deep Learning Training
Scanning Device Remote GPU
Sharing
Simulation Ethernet
Ethernet
Ethernet
16 © NEC Corporation 2016
共有NVMe SSDストレージの活用例
共有NVMe SSDストレージ
Realtime Bigdata
Analytics
In-Mem Database
Ethernet
Ethernet
Ethernet
NoSQL Database
Ethernet
High-Speed Cache
トランスコード
19 © NEC Corporation 2016
常識を超えた拡張
PCIe Switch
IO デバイス
IO デバイス
CPU CPU
IO デevice IO デevice IO デバイス
IO デevice IO デevice IO デバイス
ラック内拡張 フロア内拡張
IO デvice IO デバイス
フロア外拡張
IO デevice IO デバイス
広域拡張
イーサのネットワーク網が、1個のPCI Expressスイッチに相当
ExpEther エンジン
ExpEther エンジン
ExpEther エンジン
ExpEther エンジン
ExpEther エンジン
Ethernet Switch
Ethernet Switch
Ethernet Switch
Ethernet Switch
サーバラック内でのIO拡張はもちろん、2 Km離れたIOリソースとの接続を実現した出荷例も
どんなに複雑なイーサネット網でも、ホストCPUからは、1個のPCIe Switchと等価
一般的なサーバ
20 © NEC Corporation 2016
PCI Express仕様に完全準拠
IO Device
IO Device
Upstream Port (PCI Bridge)
Downstream Port (PCI Bridge)
Downstream Port (PCI Bridge)
Internal PCI bus
CPU
IO Device
IO Device
PCIe Switch
CPU
Ethernet Switch
ExpEtherエンジン (PCI Bridge)
ExpEtherエンジン (PCI Bridge)
ExpEtherエンジン (PCI Bridge)
イーサネット網 (CPUからは不可視)
PCI Express
PCI Express
PCI Express
PCI Express
ExpEtherはPCIeスイッチを実現する、一つのインプリ手段
ExpEtherエンジンはホストCPUからは、通常のPCI Expressスイッチとして認識され、イーサネットの部分は一切見えない
PCI Express仕様に完全準拠しており、NECの独自インタフェースではない
21 © NEC Corporation 2016
グループIDによるシステム設定
Host
A D G I
Host
B J
Host
C E H
Host
F
Group#1 Group#2 Group#3 Group#4
論理見え
Host Host Host 1 2 4
A B C D E F G H I J 2 1 1 1 1 2 3 3 3 4
ExpEther マネージャ
PCIe Switch
PCIe Switch
PCIe Switch
PCIe Switch
Host
Ethernet Fabric
3
複数ホストが存在するシステムでは、ExpEtherマネージャ・ソフトウェアによりグループIDを設定し、個々のホスト-IO構成を管理
IDは1~4,000まで設定可能で、それぞれタグVLANによりネットワークが分離される IDの動的変更も可能で、ホストからはHot-Plugによるデバイスの着脱として見える
ExpEtherマネージャのその他の機能 • ネットワーク内のExpEtherエンジンの検出 • 接続されているIOデバイス情報の収集 • 障害検出、ロギング (デバイス障害、ネットワーク障害含む) • 各ExpEtherエンジンへの個別設定 (暗号化、交換時の構成情報の引継ぎなど)
22 © NEC Corporation 2016
ExpEtherマネージャ(EEM)用ライブラリ、SDKの提供
C/C++ Library
Java Module
Java Servlet
> EEM list IO#0 Intel IO#1 Broadcom IO#2 Mellanox
EEM Library / SDK
ExpEther管理ソフト
名前*
E2SV情報
E2IO一覧
説明*
Group ID 0016
名前 説明
E2IO 1
MAC
11:22:33:44:55:10
MAC 11:22:33:44:55:66
左から2番目
生徒B
生徒C
11:22:33:44:55:11
11:22:33:44:55:12
電源
生徒A
11:22:33:44:55:13生徒D
11:22:33:44:55:14生徒E
生徒F 11:22:33:44:55:15
E2SV 1
接続
切断 電源ON 電源OFF リセット
電源連動ON 電源連動OFF
UID-LED ON UID-LED OFF
ファイル(F) ツール(T) ヘルプ(H)
OFF
ON
ON
ON
UID-SW OFF
IO種別
IO-BOX
E2Z
NDAS
NDAS
IO-BOX
IO-BOX
E2IO 2
E2IO 3
E2IO 4
E2IO 5
E2IO 6
エラ
致命
冗長
致命
* : 編集可能です。入力後Enterを押してください。
UID-LED OFF
ACアダプタ 有り 無し
削除
削除
ON
ON
更新 展開
接続済Host ListHost 1
Host 2
E2SV 1
E2SV 2
未接続Host List
Host 3
-
-
+
+
E2SV 3
-
E2IO 1E2IO 2E2IO 3E2IO 4E2IO 5E2IO 6E2IO 7
未接続IO List
+
+
-
Host 4E2SV 4
-
-
E2IO 8
-
-
標準添付 簡易CLI
Java GUIアプリ
オリジナル管理ソフトウェア
Webアプリ
利用環境に合わせた上位ソフトウェアの開発が可能 Windows / Linux向けのEEMライブラリを提供
3種のAPIをサポート REST API Java API C/C++ API
お客様で準備頂く 上位ソフトウェア
ExpEther マネージャ
23 © NEC Corporation 2016
ExpEtherの特長 : サマリ
コンピュータの設置場所や筐体サイズ、電源確保等の制約を受けずに サーバ・GPU・SSDなどのコンピュータリソースを遠隔接続可能
特長1
複数のサーバの拡張スロットに「ExpEtherボード」を搭載 Ethernet接続により1つのコンピュータリソースとして利用可能
特長2
「I/O拡張ユニット」にGPUや高速SSDといった、PCI Express準拠の 各種周辺装置を搭載し、I/O拡張を実現
特長3
NECの独自技術である高速・軽量暗号技術「TWINE」を活用 安全で高速なデータ転送を実現(ExpEther 40G)
特長4
設置場所・設置条件などの物理制約フリー
I/Oリソースの共有
柔軟な I/O拡張
セキュリティ技術(暗号化対応)
25 © NEC Corporation 2016
▌40G ExpEther (2016年5月よりサンプル出荷、 11月より正式出荷開始予定)
ExpEther 製品ラインナップ
▌1G/10G ExpEther (現在販売中)
2x 1000BASE-T DVIx1,HDMI x1 USB3.0 x1 USB2.0 x3 Headphone x1 Microphone x1
x1 PCI Express Dual 1000BASE-T
x8 PCIe Gen2
Dual 10G SFP+
x16 PCIe x 1 slot
Dual 1000BASE-T
x16 PCIe2 x 2 slots
(full height/full length) Dual 10G SFP+ per slot
ExpEther HBA ExpEther Client ExpEther IO Expansion Unit
IO Interface : x8 PCI Express 3.0 Network I/F : QSFP+ x 2 Form Factor : PCI Low Profile
IO Interface : x8 PCI Express 3.0 Slots : x16 Slot x 4 Network I/F : QSFP+ x 4
ExpEther HBA IO拡張ユニット
3U
400mm
19” Rack Size
1,000W PSU
26 © NEC Corporation 2016
IO拡張ユニットによるGPUの増設
x16 PCIe Slot x 4 (x8 PCIe Gen3)
GPU用 8ピン補助電源
ExpEther Engine
NVIDIA Tesla K80を2枚実装した例
IO Expansion Unit
28 © NEC Corporation 2016
PG-Stromとは?
Storage GPU
Query Executor
Query Optimizer
SQL Parser
Storage Manager
In-house Application
Business Intelligence Reporting
SSD
PG-Strom Extension
no schema changes
Official Interface
No change of SQL queries PG-Stromは、SQLからこれと同等のGPUで実行可能な命令バイナリを生成し、非同期・並列実行します。 SQL構文には一切の変更はなく、既存のアプリケーションを使い続ける事が可能です。
No schema modification PG-StromはPostgreSQLのストレージをAs-Isで使用します。これにより、データの移行やクエリ修正などの必要なく、既存のPostgreSQL環境への導入が可能です。
No patched PostgreSQL NECの貢献により、拡張モジュールがPostgreSQLのクエリ実行計画を一部置換できるようインターフェースが標準化されました。PG-Stromはコミュニティの標準PostgreSQLに導入する事が可能です。
no query changes
SQLワークロードを透過的にGPUで並列・非同期実行し、 応答速度を高速化するPostgreSQL向け拡張モジュール
29 © NEC Corporation 2016
PG-Strom + ExpEtherによるマイクロベンチマーク
▌ Query) SELECT cat, AVG(x) FROM t0 NATURAL JOIN t1 [, ...] GROUP BY cat; measurement of query response time with increasing of inner relations
▌ t0: 100M rows, t1~t10: 100K rows for each, all the data was preloaded. ▌ PostgreSQL v9.5devel + PG-Strom (Sep-2015), CUDA 7.5(x86_64) ▌ CPU: Xeon E5-2640, RAM: 32GB, GPU: NVIDIA Tesla K20C (2496C, 706MHz)
51.76 71.85
94.64
125.61
160.93
204.21
15.80 15.77 18.11 22.44 33.66 40.01
10.64 13.63 16.95 21.25 32.24 38.52
0
50
100
150
200
250
2 3 4 5 6 7
Que
ry R
espo
nse
Tim
e [s
ec]
Number of tables joined PostgreSQL PG-Strom on ExpEther PG-Strom on Physical GPU
• テーブル数の増加に対して処理時間の伸びが緩やか。 • ExpExther経由でGPUを使用する事のペナルティは極僅か。 大量にJOIN・集計を行うバッチ処理等に期待。
30 © NEC Corporation 2016
GPU+NVMe SSDの組合せがSQLをよりインテリジェントにする
SSD-to-GPU Direct DMAを用いて不要なデータを削ぎ落す
▌GPUでI/Oを高速化するなんて事が可能なのか? × “I/O自体を高速化する” 事はできないが、、、 ◎ GPUが前処理を行う事で、I/Oに付随する同期待ちを減らす
▌開発状況:Linux用ドライバを含め、年内に動作可能な試用版を公開予定
GPU SSD
CPU + RAM
PCI-E
Table
Inne
r ta
bles
of
JO
IN
+
Make a result-set on GPU
SSDGPU Direct DMA
Execution of SQL on GPU (Select, Projection, Join)
GPURAM Data Transfer
従来の データフロー
新しい データフロー
ストレージから データを読み出したら、
既にJOINや集約が 終わっていた!?
CPUの視点:
32 © NEC Corporation 2016
ユースケース:IO拡張スロットの増設
プロセッサを増設することなく、IO拡張スロットを増設 近年のサーバはIO拡張スロットがプロセッサに直接接続されており、多数の
PCIeカードを使用する場合、(本来不要な)プロセッサも増設する必要がある
CPU#1
CPU#2 ソケット
IO拡張スロット
一般的な2Uサーバ
ネットワーク x 2
ファイバーチャネル x 2
IOの冗長構成
この3スロットを使用するには CPU#2の増設が必要
1Uサーバにスロット増設
ExpEther HBA IO拡張ユニット
Ethernet
ExpEtherにより1Uサーバに多数のIOカードを接続することも可能
安価なサーバでリッチなIO構成 サーバ・コストの削減
33 © NEC Corporation 2016
ユースケース:バーチャルリアリティ
製造現場
建設現場
医療現場
GPU
G
PU
GPU
WorkStation
WorkStation
Ether Switch W
orkStation
バーチャルリアリティ技術(VR)の進化により、建設現場や医療現場、製造現場などへの適用が活発化
解像度、ポリゴン数、テクスチャなど、処理内容に応じてGPUを動的追加
現場の既存ワークステーションへの、リモートGPU拡張 システム構成の柔軟化と設備投資の圧縮
サーバールーム
GPU
G
PU
GPU
ExpEther Engine
34 © NEC Corporation 2016
メインDB (FC SAN)
DBジャーナル (NVMe + EE)
ユースケース : データベースの高速フェイルオーバ
インメモリ・データベース障害時の、スタンバイ・サーバへの高速データ復旧 高性能なNVMeをDBのジャーナル・ロギング用ストレージとして利用 サーバ障害時、NVMeの接続先をスタンバイ側に切り替えて高速にデータ復旧
既存システムへの追加で大幅なフェイルオーバ性能の向上 データベースの高速復旧による機会損失の防止
Ethernet
FC
FCより高速なNVMeをDBのジャーナル格納に利用。
障害発生時、接続先を切り替えるだけで、スタンバイ側からジャーナルを高速に読み出し復旧実施。
障害発生時にフェイルオーバ
障害
Activeサーバ
Standbyサーバ
35 © NEC Corporation 2016
導入事例:リソース・プール・システム(大阪大学様)
Server Server Server Server Server Server Server Server Server Server
SAS JBOD SAS JBOD SAS JBOD SAS Ctrl
GPUs GPUs
TOR SW
Server Server Server Server Server Server Server Server Server Server
SAS JBOD SAS JBOD SAS Ctrl
GPUs GPUs
TOR SW
Server Server Server Server Server Server Server Server Server Server
SAS JBOD SAS JBOD SAS Ctrl
GPUs GPUs
TOR SW
Server Server Server Server Server Server Server Server Server Server
PCoIP K2 GRID
GPUs GPUs
TOR SW
Server Server Server Server Server Server Server Server Server Server
SAS JBOD SAS JBOD SAS Ctrl
GPUs GPUs
TOR SW
Server Server Server Server Server
Server Server Server Server
NIC PCIe Flash
GPUs GPUs
TOR SW
Server Server Server Server
CPU
GPU GPU
GPU GPU
HDD HDD
Flash Flash
Software Provisioning
Server ユーザの要求に沿ったIO構成を持つサーバをデプロイ。
64台のサーバに、GPUを含む約70個のI/OデバイスをExpEtherで接続 研究目的に合わせ、最適なハードウェア構成が出来るため、リソース全体を最大
限に効率的に利用することが可能
http://jpn.nec.com/press/201406/20140602_03.html
37 © NEC Corporation 2016
アクセラレータ拡張Boxのコンセプト
GP Server EE HBA EEE
GP Server EE HBA EEE
GP Server EE HBA EEE
GP Server EE HBA EEE
GPU Box
GPU
G
PU
GPU
G
PU
GPU
Ether Switch
40G
Ethe
rnet
L2スイッチを内蔵
ExpEther Engines
GP Server
GPU
G
PU
GP Server
GPU
GP Server
GPU
G
PU
GPU
G
PU
GP Server
GPU
G
PU
GPU
G
PU
GPU
Stand-by GP Server G
PU
GPU
G
PU
GPU
Fail
クラウド・サービス提供ベンダでは、GPUの運用効率化が課題 高価なGPU(K40,K80クラス)を複数要求されるため、GPUを4~8枚サポートする特殊
なGPUサーバが必要となる 一方で、常に複数GPUが使用されるとは限らず、また、サーバ故障時のフェイルオーバ
用スタンバイサーバを考慮すると、GPUの稼働率が非常に低い
GP Server
GPU
G
PU
GP Server
GPU
GP Server
GPU
G
PU
GPU
G
PU
GPU
GP Server
GPU
G
PU
GPU
G
PU
必要なサーバに必要な数のGPUを接続
サーバ故障時もGPUをスタンバイ・サーバへ繋ぎかえ
GPUサービスの効率的な運用が可能
38 © NEC Corporation 2016
アクセラレータ拡張Box (コンセプト)
857mm
3U
440mm IO-Module x 6 units
• GPU Form factor version – max 12 slots - K80 (300W) x 12pcs (3600W)
• HLFH Form factor version – max 36 slots - PCIe Card (75W) x 36 pcs (2700W)
PSU-Module (1200W) x 4 units Fan-Module x 3 units Switch-Module x 2 units
• 40GbE QSFP x 16 ports/unit
40 © NEC Corporation 2016
NVMe SSDを活用する上での問題
既存のNVMeストレージの問題
PCIe直結のためSAN構成で複数のサーバで共有することが困難
IO Interface : x8 PCI Express 3.0 Slots : x16 Slot x 12 Network I/F : QSFP+ x 12
SANストレージのような 使い勝手が実現できると
いいのですが…
AIC 2.5” SFF
ExpEtherを用いることで、従来ののサーバの限界を超える台数のNVMe SSDを接続することが可能に!!
41 © NEC Corporation 2016
NVMe SSDを既存のSANのように利用するために
NoE技術を用いたストレージの特徴 ExpEtherをNVMe処理に特化し最適化 1枚のHBAから接続可能なNVMe SSDの
最大数は論理上、制限なし。 HWでのミラーリングの実現 ストレージと同様の保守性
米国のApeiron社がExpEtherの応用例の 1つとしてNVMeストレージ向けに最適化した NoE (NVMe over Ethernet)プロトコルを開発
2U
NECがApeiron社の技術パートナー となり、NoEストレージ筐体ADS1000 プラットフォームを開発/生産
Apeiron Data Systems http://apeirondata.com/ 創業: 2013年1月 所在: Folsom, CA
42 © NEC Corporation 2016
NoE (NVMe over Ethernet) 技術概要
NoEプロトコル詳細
NVMeプロトコルをEthernetパケットにカプセル化 標準Ethernet L2パケットに準拠し汎用L2スイッチを利用可能 カプセル化にかかるオーバヘッドは22バイトのみの軽量プロトコル
Ethernet L2ヘッダ(18byte) + NoEヘッダ(4byte)
Local Routing Header
8B
標準IBペイロード
ICRC
4B
Global Routing Header
40B
Base Transport Hdr
12B
NVMe Cap 1
NVMe Cap n
VC
RC
2B
Extended Xport Hdrs
4, 8, 16, or 28B
iDA
TA
16B† + Cmd/Data Optional in some configurations
42B ~ > 112B Overhead
4B
NVMe Capsule
Ether
Type
Ethernet L2 Header
12B 2B
NoE Header
4B
標準Ethernetフレームペイロード
FCS
4B
PCIe TLP 1
PCIe TLP n
22B Fixed Overhead
NoEフレーム構造
NVMe over Fabrics(Infiniband)フレーム構造例
NoEを用いることで追加となるレイテンシは3us以下 類似技術(NVMe over Fabric)の1/3以下を実現
43 © NEC Corporation 2016
NoEシステム概要
x8 PCI Express
NoE HBA(サーバに搭載するPCIeカード)
#0 #1 #2
Quad NoE FPGA#0
Apeiron Storage Cont#4
NVM
e SSD
#1
2
NVM
e SSD
#1
3
NVM
e SSD
#1
4
NVM
e SSD
#1
5
PowerPC (Enclosure
Management)
Apeiron Storage Cont#5
#31 #30
NVM
e SSD
#2
0
NVM
e SSD
#2
1
NVM
e SSD
#22
NVM
e SSD
#23
40G Ehternet Switch 36ports x 40G Ethernet
40G Ethernet Switch
#0 #1 #2
Apeiron Storage Cont#0
Apeiron Storage Cont#1
NVM
e SSD
#0
NVM
e SSD
#1
NVM
e SSD
#2
NVM
e SSD
#3
Enclosure Manager
Apeiron Storage Cont#2
#15 #14
NVM
e SSD
#8
NVM
e SSD
#9
NVM
e SSD
#10
NVM
e SSD
#11
ADS1000 (NVMe SSDを24台搭載できる2Uストレージ筐体)
NoE HBA
NVMeプロトコルを Etherパケットにカプセル化
NVMeプロトコル カプセル化を解除
QSFP#1
QSFP#0
40Gb Ether
Ether L2
Packet
標準Ethernet L2パケットに準拠
44 © NEC Corporation 2016
ストレージ筐体 ADS1000
▐ NVMe over Ethernet ストレージ筐体 ▐ 軽量プロトコルによる、低遅延、高性能 ▐ 業界標準のコンポーネントと技術を採用 ▐ 外部Ethernet Switchレスで筐体増設可能
2U
最大容量 (SSD 1.6TB to 8TB)
38 ~ 192TB
レイテンシ 100us以下 (含むSSD内部遅延)
プロトコル遅延 3us以下(往復)
リード継続時 バンド幅
72 GB/s (NVMeドライブの限界値)
ランダム4Kリード時IOPS
17.8M IOPS (NVMeドライブの限界値)
ADS1000 IOモジュール ADS1000には
IOモジュールを2枚搭載 各IOモジュールは
ASCを3個搭載 (ASC: Aeprion Storage Controller)
NoEプロトコルは ASC HWで高速処理
Apeiron Storage Controller (ASC)
40Gb Ethernet Switch Fabric Apeiron storage Management
16ports of 40Gb/s QSFP+copper/optical
46 © NEC Corporation 2016
製品発表と市場での反響
2016/3/26に製品発表 英国の大手ITニュースサイトに掲載 「フラッシュストレージのゴジラだ」
出典: http://www.theregister.co.uk /2016/03/29/apeirons_godzilla_of_flash_arrays/
47 © NEC Corporation 2016
第三者機関による動作検証 / 東芝社製SSDの採用
第三者機関のESGによる動作検証完了
東芝社製など有力SSDベンダーとの 技術パートナー提携を拡充中
出典: Apeiron社プレスリリース
出典: Apeiron社プレスリリース
関連セッション: 株式会社東芝様 7/13(水) 15:00-15:50 Room B Storage Class Memory Solution for Big Data applications 講師: ScaleMP, Inc. Benzi Galili様 7/14(木) 11:00-11:50 Room B 超高速NoSQLデータベースと 超高速SSDの融合 講師: Aerospike Inc. 田村 俊明様 株式会社東芝 星野 純一様
49 © NEC Corporation 2016
まとめ
「無限の彼方に」using NVMe !!
NVMeの活用には一工夫が必要
Database高速化にアクセラレーションデバイスの活用
今後Databaseの高速化にはNVMe SSDの活用は必須
ExpEtherやNoEのような技術との組み合わせで 従来のSANのような使い勝手を実現
ストレージ技術だけではなく GPUやFPGAなどを用いた クエリー処理高速化も 今後注視が必要