Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
データベース高速化技術:PG-Strom
~GPUの役割を再定義する~
ヘテロDB株式会社
チーフアーキテクト 兼 代表取締役社長
海外 浩平 <kaigai@heterodb.com>
HeteroDB社について
会社概要
 商号 ヘテロDB株式会社
 創業 2017年7月4日
 代表者 海外 浩平
 拠点 品川区西大井1-1-2-206
 事業内容 高速データベース製品の販売
GPU&DB領域の技術コンサルティング...
中核技術 - PG-Strom
PG-Strom: GPUの持つ数百~数千コアと広帯域メモリを利用して、
SQLワークロードを高速化するPostgreSQL向け拡張モジュール
ビッグデータ処理
機械学習・統計解析
RDBに求められる諸機能
✓ ...
一般的な x86_64 サーバの構成
GPUSSD
CPU
RAM
HDD
N/W
4 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
大量データを処理する時のデータの流れ
CPU RAM
SSD GPU
PCIe
PostgreSQL
データブロック
通常のデータフロー
本来は不要なレコードであっても、
一度CPU/RAMへロードしなければ
要・不要を判断できないため、
デー...
中核機能:SSD-to-GPUダイレクトSQL実行
CPU RAM
SSD GPU
PCIe
PostgreSQL
データブロック
NVIDIA GPUDirect RDMA
CPU/RAMを介することなく、
Peer-to-PeerのDMAを...
データパスの改善はどの程度I/Oを高速化するのか?
0
1000
2000
3000
4000
5000
6000
7000
8000
Q1_1 Q1_2 Q1_3 Q2_1 Q2_2 Q2_3 Q3_1 Q3_2 Q3_3 Q3_4 Q4_1...
適用例:三井情報様 – ログ集積・解析システム
GPU+NVME-SSD搭載
データベースサーバ
SQLによる検索
セキュリティ事故
被害状況把握
影響範囲特定
責任者への報告
• 高速なトライ&エラー
• 使い慣れたインターフェース
• 行デ...
next mission
ハードウェアの
限界を越える
I/O拡張ボックスによるPCIeバス帯域限界の突破(1/3)
世の中には PCIe バスを引き延ばして外部I/O拡張ボックスに接続する製品がある。
SSD-to-GPUダイレクトSQL実行
データ転送の最も高負荷な部分を
I/O拡張ボックスの内...
I/O拡張ボックスによるPCIeバス帯域限界の突破(2/3) v2.1
PCIe I/O Expansion Box
Host System
(x86_64 server)
NVMe SSD
PostgreSQL Tables
PostgreS...
I/O拡張ボックスによるPCIeバス帯域限界の突破(3/3)
I/O拡張ボックス3台構成で、max 13.5GB/s のクエリ処理速度を実現!
v2.1
 I/O拡張ボックス毎に353GB (sf: 401)、計1050GB のデータセットを...
Not only IT, but IoT also...
増え続けるログデータの管理、集計から解析・機械学習まで対応したデータ管理基盤
Manufacturing Logistics Mobile & Networks Home electro...
本日のまとめ
 PG-Strom
GPUを用いてSQL処理を高速化するPostgreSQLモジュール。
SQL構文やデータ構造を変えることなくアプリケーションの高速化が可能。
 ユニーク技術:SSD-to-GPUダイレクトSQL実行
SSD...
20180914 GTCJ INCEPTION HeteroDB
Upcoming SlideShare
Loading in …5
×

20180914 GTCJ INCEPTION HeteroDB

333 views

Published on

GPU Technology Conference Japan 2018での発表資料です。

Published in: Software
  • Be the first to comment

  • Be the first to like this

20180914 GTCJ INCEPTION HeteroDB

  1. 1. データベース高速化技術:PG-Strom ~GPUの役割を再定義する~ ヘテロDB株式会社 チーフアーキテクト 兼 代表取締役社長 海外 浩平 <kaigai@heterodb.com>
  2. 2. HeteroDB社について 会社概要  商号 ヘテロDB株式会社  創業 2017年7月4日  代表者 海外 浩平  拠点 品川区西大井1-1-2-206  事業内容 高速データベース製品の販売 GPU&DB領域の技術コンサルティング ヘテロジニアスコンピューティング技術を データベース領域に適用し、 誰もが使いやすく、 安価で高速なデータ解析基盤を提供する。 2 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  3. 3. 中核技術 - PG-Strom PG-Strom: GPUの持つ数百~数千コアと広帯域メモリを利用して、 SQLワークロードを高速化するPostgreSQL向け拡張モジュール ビッグデータ処理 機械学習・統計解析 RDBに求められる諸機能 ✓ 可用性/バックアップ ✓ 運用管理/トランザクション ✓ レプリケーション ✓ 周辺アプリケーション・ドライバ ➔ PostgreSQLのものをそのまま利用可 GPU PG-Strom 大量のデータを高速に ストレージから読み出す 3 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  4. 4. 一般的な x86_64 サーバの構成 GPUSSD CPU RAM HDD N/W 4 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  5. 5. 大量データを処理する時のデータの流れ CPU RAM SSD GPU PCIe PostgreSQL データブロック 通常のデータフロー 本来は不要なレコードであっても、 一度CPU/RAMへロードしなければ 要・不要を判断できないため、 データサイズは大きくなりがち。 一度CPU/RAMへロードしなければ、 “ゴミデータ”であってもその要否を判断できない。 5 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  6. 6. 中核機能:SSD-to-GPUダイレクトSQL実行 CPU RAM SSD GPU PCIe PostgreSQL データブロック NVIDIA GPUDirect RDMA CPU/RAMを介することなく、 Peer-to-PeerのDMAを用いて SSD上のデータブロックを直接 GPUに転送する機能。 WHERE句 JOIN GROUP BY GPUでSQLを処理し、 データ量を削減する データ量:小 6 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  7. 7. データパスの改善はどの程度I/Oを高速化するのか? 0 1000 2000 3000 4000 5000 6000 7000 8000 Q1_1 Q1_2 Q1_3 Q2_1 Q2_2 Q2_3 Q3_1 Q3_2 Q3_3 Q3_4 Q4_1 Q4_2 Q4_3 QueryExecutionThroughput[MB/s] Star Schema Benchmark (on SkyLake-SP + Volta) PgSQL v10 PG-Strom v2.0  353GB (sf: 401) のデータセットを用いて、13種類の集計・解析系クエリを実行。  CPU: Xeon Gold 6126T (2.6GHz, 12C) x1, RAM: 192GB, GPU: Tesla P40 (3840C, 24GB) x1, SSD: Intel DC P4600 (2.0TB, HHHL)x3 標準のPostgreSQLに比べ、5倍程度のクエリ処理性能を発揮 7 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  8. 8. 適用例:三井情報様 – ログ集積・解析システム GPU+NVME-SSD搭載 データベースサーバ SQLによる検索 セキュリティ事故 被害状況把握 影響範囲特定 責任者への報告 • 高速なトライ&エラー • 使い慣れたインターフェース • 行データのままで高速な検索 Aug 12 18:01:01 saba systemd: Started Session 21060 of user root. 従来システム40分の クエリを30秒で実行 Aug 12 16:04:03 namazu sshd[5876]: Failed password for root from xx.xx.xx.xx port xxx ssh2 8 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  9. 9. next mission ハードウェアの 限界を越える
  10. 10. I/O拡張ボックスによるPCIeバス帯域限界の突破(1/3) 世の中には PCIe バスを引き延ばして外部I/O拡張ボックスに接続する製品がある。 SSD-to-GPUダイレクトSQL実行 データ転送の最も高負荷な部分を I/O拡張ボックスの内側で完結させる WHERE句 JOIN GROUP BY 圧倒的に 省スペース v2.1 10 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  11. 11. I/O拡張ボックスによるPCIeバス帯域限界の突破(2/3) v2.1 PCIe I/O Expansion Box Host System (x86_64 server) NVMe SSD PostgreSQL Tables PostgreSQL Data Blocks Internal PCIe Switch SSD-to-GPU P2P DMA (Large data size) GPU WHERE-clause JOIN GROUP BY PCIe over Ethernet Pre-processed small data Boxあたり 数GB/sの SQL実行性能 Boxあたり 数GB/sの SQL実行性能 Boxあたり 数GB/sの SQL実行性能 NIC / HBA (分散トランザクションを意識しない) 単純なシングルノード構成 ➔ DB管理やアプリ開発がシンプルに 性能・容量の増強 PostgreSQL上ではパーティション化されたテーブルとして管理 11 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  12. 12. I/O拡張ボックスによるPCIeバス帯域限界の突破(3/3) I/O拡張ボックス3台構成で、max 13.5GB/s のクエリ処理速度を実現! v2.1  I/O拡張ボックス毎に353GB (sf: 401)、計1050GB のデータセットを用いて、13種類のSSBMクエリを実行  CPU: Xeon E5-2603 v4 (6C, 1.7GHz) x1, RAM: 64GB、GPU: Tesla P40 (3840C, 24GB) x3, SSD: Intel DC P4600 (2.0TB, HHHL)x6  Raw-I/OはSSD➔Hostへの単純ファイル転送時のスループット。最大 13.5GB/s であるSQL応答時間の方が高速になっている。 0 2,000 4,000 6,000 8,000 10,000 12,000 14,000 Q1_1 Q1_2 Q1_3 Q2_1 Q2_2 Q2_3 Q3_1 Q3_2 Q3_3 Q3_4 Q4_1 Q4_2 Q4_3 QueryExecutionThroughput[MB/s] Star Schema Benchmark for PgSQL v11beta3 / PG-Strom v2.1devel on NEC ExpEther x3 PostgreSQL v11beta3 PG-Strom v2.1devel Raw-I/O限界値 12 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  13. 13. Not only IT, but IoT also... 増え続けるログデータの管理、集計から解析・機械学習まで対応したデータ管理基盤 Manufacturing Logistics Mobile & Networks Home electronics GPU + NVME-SSD 13 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc
  14. 14. 本日のまとめ  PG-Strom GPUを用いてSQL処理を高速化するPostgreSQLモジュール。 SQL構文やデータ構造を変えることなくアプリケーションの高速化が可能。  ユニーク技術:SSD-to-GPUダイレクトSQL実行 SSDとGPUを直結し、ハードウェア限界に近い速度でデータブロックを読出し、 GPUの超並列処理によって効率的に不要データを落とす技術。 ➔ 結果的に、GPUでI/Oも高速化(!)しているかのように見える。  ログデータ解析など大量データ処理を早く、安く、手軽に データのある場所でデータを処理し、できる限りデータを動かさない。 データの集積と集計・解析を同一システムで実行し、 システム構成やオペレーションを単純化する。 ▌連絡先  e-mail contact@heterodb.com  Tw @kkaigai 14 GPU Technology Conference Japan 2018 - INCEPTION AWARD / HeteroDB,Inc

×