ハードウェアによる 様 々な 構 造 型 ストレージの 高 速 化 松 谷 宏 紀 慶 應 義 塾 大 学 理 工 学 部 JSTさきがけ NII 1
自 己 紹 介 : 松 谷 宏 紀 学 部 @ 慶 應 大 学 SFC インターネットの 研 究 IPv6 / Mobile IPv6 組 込 み 機 器 向 け IPv6 スタック ポスドク(SPD)@ 東 京 大 学 Network-on-Chip(NoC) 3 次 元 積 層 65nm チップ 試 作 徐 々に 回 路 寄 りになる 2000 2003 2004 2009 2011 2014 修 士 博 士 @ 慶 應 大 学 計 算 機 HW の 研 究 Network-on-Chip(NoC) トポロジ ルーティング やや 理 論 的 だった 教 員 @ 慶 應 大 学 フルカスタム 回 路 設 計 反 動 (?)でビッグデータ に 興 味 を 持 つ 全 国 大 会 に 呼 ばれる! 2
ICT におけるトレンド: ビッグデータとグリーン 化 Big data: the next oil データの 蓄 積 利 活 用 によって さまざまなイノベーションが 期 待 9000 [EB] 6000 Information Sensor 3000 explosion Social media Voice Enterprise 2005 2010 2015 Green datacenters 地 球 温 暖 化 防 止 の 観 点 経 済 面 (データセンター 運 用 コスト) から 消 費 電 力 の 削 減 は 必 須 Amortized CAPEX OPEX Servers Power Power cooling use IT 機 器 の 増 強 へ 作 用 ( 電 力 増 ) IT 機 器 の 省 電 力 化 への 要 求 IT 機 器 の 省 電 力 化 をこれまで 以 上 に 推 し 進 めなければ 電 力 がビッグデータ 利 活 用 の 大 きな 足 かせになる 制 限 : IT 機 器 の 省 電 力 化 はすでにやり 尽 くされている データセンターでは コモディティ 機 (コスト 効 率 重 視 )が 多 用 そもそも 回 路 の 電 源 電 圧 はもう 下 げられない 今 こそ 計 算 機 アーキテクチャのレベルからの 再 考 が 必 要 と 言 える 3
本 発 表 の 概 要 : 計 算 強 度 とI/O 強 度 の 観 点 から ビッグデータ 向 け 計 算 機 アーキテクチャの 研 究 例 ストレージマイグレーション 仮 想 マシンマイグレーション ビッグデータをサーバから サーバへ 移 動 させる サイズは 数 GBからTB 級 光 無 線 による 40GbE 動 的 リンク 構 造 型 ストレージ(NOSQL) 用 途 特 化 型 でスケーラビ リティの 高 いデータベース 大 量 のデータ 転 送 を 扱 う 40GbE FPGAボードを 用 いた DB キャッシュ HW 計 算 インテンシブ I/Oインテンシブ メニーコアプロセッサ リクエストレベル 並 列 性 多 数 のプロセッサを 積 層 ワイヤレス3 次 元 CMP グラフ 型 DB の 探 索 処 理 ソーシャルグラフの 探 索 ノード 数 は10 万 以 上 GPU を 用 いた 並 列 処 理 4
高 速 化 の 基 本 : ルーフラインモデル(HPC の 例 ) アプリケーション 性 能 を 律 速 する 要 因 計 算 能 力 メモリ I/O 性 能 どちらを 改 善 すればよいかは 対 象 アプ リにおける 計 算 と I/O の 割 合 に 依 存 アプリの 算 術 強 度 (FP 演 算 /メモリアクセス)の 例 達 成 可 能 な GFLOPs/sec ピークのメモリ 帯 域 算 術 強 度 ピークのFP 演 算 性 能 どちらか 小 さい ほうに 律 速 図 はD.Patterson & J.Hennessy, "Computer Organization and Design (4/E)"より
高 速 化 の 基 本 : ルーフラインモデル(HPC の 例 ) アプリケーション 性 能 を 律 速 する 要 因 計 算 能 力 メモリ I/O 性 能 どちらを 改 善 すればよいかは 対 象 アプ リにおける 計 算 と I/O の 割 合 に 依 存 アプリの 算 術 強 度 (FP 演 算 /メモリアクセス)の 例 達 成 可 能 な GFLOPs/sec ピークのメモリ 帯 域 算 術 強 度 ピークのFP 演 算 性 能 どちらか 小 さい ほうに 律 速 図 はD.Patterson & J.Hennessy, "Computer Organization and Design (4/E)"より
本 発 表 の 概 要 : 計 算 強 度 とI/O 強 度 の 観 点 から ビッグデータ 向 け 計 算 機 アーキテクチャの 研 究 例 ストレージマイグレーション 仮 想 マシンマイグレーション ビッグデータをサーバから サーバへ 移 動 させる サイズは 数 GBからTB 級 光 無 線 による 40GbE 動 的 リンク I/Oインテンシブ メニーコアプロセッサ リクエストレベル 並 列 性 多 数 のプロセッサを 積 層 ワイヤレス3 次 元 CMP 構 造 型 ストレージ(NOSQL) 用 途 特 化 型 でスケーラビ リティの 高 いデータベース 大 量 のデータ 転 送 を 扱 う 40GbE FPGAボードを 用 いた DB キャッシュ HW 計 算 インテンシブ グラフ 型 DB の 探 索 処 理 ソーシャルグラフの 探 索 ノード 数 は10 万 以 上 GPU を 用 いた 並 列 処 理 8 RDBMSに 比 べると 処 理 はシンプル( 例 : Key-value store) I/O ネックになるので 通 信 と 計 算 の 密 結 合 が 有 利
本 発 表 の 概 要 : 計 算 強 度 とI/O 強 度 の 観 点 から ビッグデータ 向 け 計 算 機 アーキテクチャの 研 究 例 ストレージマイグレーション 仮 想 マシンマイグレーション ビッグデータをサーバから 10GbE サーバへ 移 動 させる サイズは 10GbE 数 GBからTB 級 光 無 線 による 40GbE 動 的 リンク 10GbE 10GbE I/Oインテンシブ メニーコアプロセッサ リクエストレベル 並 列 性 多 数 のプロセッサを 積 層 ワイヤレス3 次 元 CMP 構 造 型 ストレージ(NOSQL) 用 途 特 化 型 でスケーラビ リティの 高 いデータベース 大 量 のデータ 転 送 を 扱 う 40GbE FPGAボードを 用 いた DB キャッシュ HW FPGA 計 算 インテンシブ グラフ 型 DB の 探 索 処 理 ソーシャルグラフの 探 索 ノード 数 は10 万 以 上 GPU を 用 いた 並 列 処 理 9 RDBMSに 比 べると 処 理 はシンプル( 例 : Key-value store) I/O ネックになるので 通 信 と 計 算 の 密 結 合 が 有 利
構 造 型 ストレージ: データ 構 造 の 点 から 分 類 構 造 型 ストレージは 水 平 スケーラビリティに 優 れる が 得 手 不 得 手 がある( 特 定 用 途 特 化 型 ) Row Key Column Family 1 HBase, BigTable Memcached Key Value Column Family 2 カラム 指 向 型 キーバリュー ストア 型 Shopping cart, User profile, Session, etc MongoDB ドキュメント 指 向 型 グラフ 型 Customer social graph Jiro Hiro { _id : ObjectId(0), name : Risa, tel : 1234 } { _id : ObjectID(1) name : Shinpei, mail : kato@x.jp} Schema-less DB Neo4j Risa Aya Taro Shinpei Ken Yuko 10
ポリグロット 永 続 化 : 複 数 DB を 相 補 的 に 利 用 ポリグロット= 多 言 語 特 定 用 途 に 特 化 した 構 造 型 ストレージを 組 み 合 わせれば 複 雑 なサービスも 実 現 できる Row Key Column Family 1 HBase, BigTable Memcached Key Value Column Family 2 Applications Cache & session Key-value store Shopping cart, User profile, Session, etc Inventory & price RDBMS CMS & blogging Column-oriented Questionnaire Document DB MongoDB Recommendation Graph DB Customer social graph Batch processing MapReduce, BI Jiro Hiro { _id : ObjectId(0), name : Risa, tel : 1234 } { _id : ObjectID(1) name : Shinpei, mail : kato@x.jp} Schema-less DB Neo4j Risa Aya Taro Shinpei Ken Yuko 11
40GbEとFPGAを 用 いたNOSQLキャッシュ 各 種 NOSQLのCRUD 操 作 をFPGA 上 にハード 化 40GbEネットワークとDB HWを 直 結 (I/Oネック) NOSQLサーバ NOSQLサーバのキャッシュ 層 Request & Reply Scan table startrow stoprow 10GbE 10GbE 10GbE 10GbE FPGA Graph processing using Many cores or GPUs Parallel algorithm Hardware-based table management Binary JSON 12
通 行 人 年 齢 13 40GbEとFPGAを 用 いたNOSQLキャッシュ 各 種 NOSQLのCRUD 操 作 をFPGA 上 にハード 化 40GbEネットワークとDB HWを 直 結 (I/Oネック) HBase サーバ 群 Put table 0101+age 28 Put table 0101+gender M カメラ 画 像 の リアルタイム 解 析 通 行 人 年 齢 性 別 時 間 通 行 人 年 齢 性 別 時 間 沖 電 気 RESCAT
40GbEとFPGAを 用 いたNOSQLキャッシュ 各 種 NOSQLのCRUD 操 作 をFPGA 上 にハード 化 40GbEネットワークとDB HWを 直 結 (I/Oネック) HBase サーバ 群 HBase キャッシュ Scan table startrow stoprow Cached Results Graph processing using Many cores or GPUs Parallel algorithm Hardware-based table management Binary JSON 14
本 発 表 の 概 要 : 計 算 強 度 とI/O 強 度 の 観 点 から ビッグデータ 向 け 計 算 機 アーキテクチャの 研 究 例 ストレージマイグレーション 仮 想 マシンマイグレーション ビッグデータをサーバから サーバへ 移 動 させる サイズは 数 GBからTB 級 光 無 線 による 40GbE 動 的 リンク 構 造 型 ストレージ(NOSQL) グラフ 計 算 量 は 問 題 サイズ(ノード 数 次 数 )によって 増 加 ソーシャルグラフはノード 数 が 非 常 に 大 きく 次 数 も 大 き い(Facebookの 平 均 次 数 は197!) GPUやメニーコアなど 計 算 インテンシブなデバイス 有 利 用 途 特 化 型 でスケーラビ リティの 高 いデータベース 大 量 のデータ 転 送 を 扱 う 40GbE FPGAボードを 用 いた DB キャッシュ HW 計 算 インテンシブ I/Oインテンシブ メニーコアプロセッサ リクエストレベル 並 列 性 多 数 のプロセッサを 積 層 ワイヤレス3 次 元 CMP グラフ 型 DB の 探 索 処 理 ソーシャルグラフの 探 索 ノード 数 は10 万 以 上 GPU を 用 いた 並 列 処 理 15
SNS とグラフ 型 データベース ソーシャルネットワーキングサービス(SNS) 膨 大 な 数 の 会 員 数 ( 例 : ノード 数 = 億 単 位 次 数 =197) インターネット 上 の 交 流 リコメンデーションエンジン 検 索 クエリの 例 Ken の2ホップ 以 内 の 友 人 で 25 歳 以 上 の 男 性 は? Taro M, 35 Shin M, 21 Aya F, 29 Ken M, 28 Hiro M, 32 Risa F, 31 Yuko F, 25 グラフ 型 データベース ノード( 特 徴 ) エッジ(ノード 間 の 関 係 性 )の 操 作 に 特 化 Dijkstra A* Shortest Path All Path All Simple Path 16
17 GPU によるグラフ 型 DB 高 速 化 数 十 万 ノードのグラフ 探 索 を GPU を 用 いて 高 速 化 30~40 倍 の 高 速 化 GeForce GTX 780Ti 2,880 cores Dijkstra 法 A* 法 を 実 装 Neo4j(Java)からjcuda を 用 いて CUDA 呼 び 出 し
本 発 表 の 概 要 : 計 算 強 度 とI/O 強 度 の 観 点 から ビッグデータ 向 け 計 算 機 アーキテクチャの 研 究 例 ストレージマイグレーション 仮 想 マシンマイグレーション ビッグデータをサーバから サーバへ 移 動 させる サイズは 数 GBからTB 級 光 無 線 による 40GbE 動 的 リンク 構 造 型 ストレージ(NOSQL) グラフ 計 算 量 は 問 題 サイズ(ノード 数 次 数 )によって 増 加 ソーシャルグラフはノード 数 が 非 常 に 大 きく 次 数 も 大 き い(Facebookの 平 均 次 数 は197!) GPUやメニーコアなど 計 算 インテンシブなデバイス 有 利 用 途 特 化 型 でスケーラビ リティの 高 いデータベース 大 量 のデータ 転 送 を 扱 う 40GbE FPGAボードを 用 いた DB キャッシュ HW 計 算 インテンシブ I/Oインテンシブ メニーコアプロセッサ リクエストレベル 並 列 性 多 数 のプロセッサを 積 層 ワイヤレス3 次 元 CMP グラフ 型 DB の 探 索 処 理 ソーシャルグラフの 探 索 ノード 数 は10 万 以 上 GPU を 用 いた 並 列 処 理 18
ワイヤレス3 次 元 チップマルチプロセッサ 共 有 メモリ 型 マルチプロセッサ(CMP) プロセッサ(L1キャッシュ) 共 有 L2キャッシュバンク オンチップルータで 結 合 3 次 元 CMP CMP チップを 複 数 積 層 積 層 チップ 間 は 無 線 通 信 ( 例 : 誘 導 結 合 ) Vertical links Chip#2 Chip#1 Chip#0 2013 年 4 月 より 独 立 予 算 獲 得 の 厳 しさを 知 る Fujitsu 65nm 19
本 発 表 の 概 要 : 計 算 強 度 とI/O 強 度 の 観 点 から ビッグデータ 向 け 計 算 機 アーキテクチャの 研 究 例 ストレージマイグレーション 仮 想 マシンマイグレーション ビッグデータをサーバから サーバへ 移 動 させる サイズは 数 GBからTB 級 光 無 線 による 40GbE 動 的 リンク I/Oインテンシブ メニーコアプロセッサ リクエストレベル 並 列 性 多 数 のプロセッサを 積 層 ワイヤレス3 次 元 CMP 構 造 型 ストレージ(NOSQL) 用 途 特 化 型 でスケーラビ リティの 高 いデータベース 大 量 のデータ 転 送 を 扱 う 40GbE FPGAボードを 用 いた DB キャッシュ HW 計 算 インテンシブ グラフ 型 DB の 探 索 処 理 データ 転 送 なので 計 算 量 は 少 なく 完 全 に I/Oネックとなる ネットワークを 増 強 すべき ソーシャルグラフの 探 索 ノード 数 は10 万 以 上 GPU を 用 いた 並 列 処 理 20
21 無 線 による40GbE 動 的 ショートカットリンク データセンターにおける 突 発 的 データ 転 送 仮 想 マシンの 移 送 ( 数 GBオーダ) ストレージマイグレーション 分 散 DBのストリーミング 1GbE リンクでは VM 移 送 に 数 分 かかることもある 光 無 線 による 40GbE 動 的 ショートカットリンク
無 線 による40GbE 動 的 ショートカットリンク 光 無 線 による 40GbE 動 的 ショートカットリンク 40GbE LR4( 波 長 1300nm)をコリメータレンズに 直 結 レンズの 向 きを 調 整 することで 動 的 にリンクを 形 成 VM( 仮 想 マシン)ハイウェイ 負 荷 分 散 やメンテナンスのためのVM 移 送 など 大 容 量 のデータ 転 送 の 前 に 追 加 リンクを 動 的 に 準 備 22
本 発 表 のまとめ: ビッグデータ 処 理 高 速 化 の 指 針 アプリケーションごとに 計 算 強 度 I/O 強 度 は 異 なる ルーフラインモデルを 用 いて どこを 改 善 すべきか 判 断 ビッグデータ 向 け 計 算 機 アーキテクチャの 研 究 例 ストレージマイグレーション 仮 想 マシンマイグレーション ビッグデータをサーバから サーバへ 移 動 させる サイズは 数 GBからTB 級 光 無 線 による 40GbE 動 的 リンク 構 造 型 ストレージ(NOSQL) 用 途 特 化 型 でスケーラビ リティの 高 いデータベース 大 量 のデータ 10GbE*4 転 送 を 扱 う 40GbE FPGAボードを 用 FPGA いた DB キャッシュ HW 計 算 インテンシブ I/Oインテンシブ Chip#2 Chip#1 Chip#0 メニーコアプロセッサ リクエストレベル 並 列 性 多 数 のプロセッサを 積 層 ワイヤレス3 次 元 CMP グラフ 型 DB の 探 索 処 理 ソーシャルグラフの 探 索 ノード 数 は10 万 以 上 GPU Geforce を 用 いた 780Ti 並 列 GPU 処 理 2,880 cores 23
Any Questions? Acknowledgement: 本 研 究 の 一 部 はJSTさきがけ 総 務 省 SCOPEの 支 援 を 受 けています 24