《補足》ログデータはどこで生成されるのか?
Deep Learning Community#10 - Apache ArrowとSSD-to-GPU Direct SQLで作る "超高速" データ処理基盤22
ETL
OLTP OLAP
伝統的なOLTP&OLAPシステム - データはDBシステムの内側で生成される
Data
Creation
IoT/M2M時代 - データはDBシステムの外側で生成される
Log processing
BI Tools
BI Tools
Gateway Server
Async
Write
Async
Read
Data
Creation
Many Devices
Import!
23.
SSD-to-GPUダイレクトSQL on Arrow_Fdw
DeepLearning Community #10 - Apache ArrowとSSD-to-GPU Direct SQLで作る "超高速" データ処理基盤23
PCIe Bus
NVMe SSD GPU
SSD-to-GPU P2P DMA WHERE句
JOIN
GROUP BY
Apache Arrow
データファイル
Arrow_Fdw
モジュール
Apache Arrow ➔
PostgreSQL Heapへの
データ形式変換
WHERE句
JOIN
GROUP BY
被参照列だけを
P2P DMAで転送
Apache Arrow形式に対応。
GPUがデータ形式を解釈し、
数千コアを用いた並列実行
実行結果は PostgreSQL の
Heap形式でホスト側へ転送。
(通常、元データより小さい)
実行結果
“被参照列だけ”をGPUに転送する点を除き、同一のインフラを使用している。
ログデータ(時系列データ)向けパーティション設定例
▌PostgreSQLテーブルとArrow外部テーブルの混在するパーティション設定
▌ログデータは必ずタイムスタンプを含んでおり、更新がない。
➔ 古くなったデータは Arrow外部テーブルへ移す事で高速化。
logdata_201812
logdata_201901
logdata_201902
logdata_current
logdataテーブル
(PARTITION BY timestamp)
2019-03-21
12:34:56
dev_id: 2345
signal: 12.4
タイムスタンプ
付きログデータ
PostgreSQLテーブル
行データ構造
読み書き可能だが低速
Arrow外部テーブル
列データ構造
読込み専用だが高速
検索条件にタイムスタンプを含む場合、
明らかに該当しない子テーブルは読み飛ばす。
例) WHERE timestamp > ‘2019-01-23’
AND device_id = 456
Deep Learning Community #10 - Apache ArrowとSSD-to-GPU Direct SQLで作る "超高速" データ処理基盤31
32.
ログデータ(時系列データ)向けパーティション設定例
▌PostgreSQLテーブルとArrow外部テーブルの混在するパーティション設定
▌ログデータは必ずタイムスタンプを含んでおり、更新がない。
➔ 古くなったデータは Arrow外部テーブルへ移す事で高速化。
logdata_201812
logdata_201901
logdata_201902
logdata_current
logdataテーブル
(PARTITION BY timestamp)
2019-03-21
12:34:56
dev_id: 2345
signal: 12.4
タイムスタンプ
付きログデータ
logdata_201812
logdata_201901
logdata_201902
logdata_201903
logdata_current
logdataテーブル
(PARTITION BY timestamp)
一ヶ月
経過
2019年3月分の
データを抽出
Deep Learning Community #10 - Apache ArrowとSSD-to-GPU Direct SQLで作る "超高速" データ処理基盤32
33.
想定利用シーン – IoT/M2M向けログデータ処理+ 異常検知など
Deep Learning Community #10 - Apache ArrowとSSD-to-GPU Direct SQLで作る "超高速" データ処理基盤33
増え続けるログデータの管理、集計から解析・機械学習まで対応したデータ管理基盤
Manufacturing Logistics Mobile Home electronics
JBoF: Just Bunch of Flash
NVME over
Fabric
(RDMA)
DB管理者
BIツール
共通データフレーム
NVIDIA RAPIDS
異常検知など
機械学習アプリケーション