2018年11月7日水曜日

GPUデータベースとは CPUとの比較で分かるビッグデータ並列処理

 近年は新しいデータ処理技術が次々と登場している。GPUデータベースもその1つだ。これまで主にグラフィックス表示やゲームシステムに使われてきたGPUの能力を、グラフデータ処理や機械学習などのビッグデータ処理に活用する。

 451 Researchでデータプラットフォームとアナリティクス担当のシニアアナリストを務めるジェームズ・カーティス氏に、GPUデータベースの背景と用途について聞いた。

——ビッグデータ処理の需要が高まり、GPUを導入するデータセンターが増えている。また、Blazegraph、Kinetica、MapDもGPUデータベースを利用している。GPUデータベースの活用は今後どの程度広がるか。

ジェームズ・カーティス氏 新しいデータベースは特定のワークロードやシナリオに合わせて調整する傾向にある。そのためのアプローチはGPUデータベースのベンダーによって異なる。汎用データウェアハウスのように広範な用途の市場を対象とするベンダーは「SQL-92」準拠を進めている。

 GPUは大量のデータを処理できるため、特定の種類のクエリ処理に適している。例えば地理空間分析を高速化するのに向いている。

 しかし、1つのSQL文が20ページも続くような複雑なSQLクエリにGPUを使っても、標準的なインメモリSQLデータベースのパフォーマンスを高めることはできない。並列処理でなければGPUを使う効果はあまりない。地理空間データなどの処理なら演算を並列に実行できる。

——GPUはCPUの代わりになるか。

カーティス氏 GPUはCPUを置き換えるものではない。GPUの用途は限られており、並列処理に限定される。機械学習はこうした並列処理が有用な分野だ。だが、機械学習にGPUデータベースを使うという考えはまだあまり浸透していない。

 とはいえ、GPUは一時的な流行では終わらないだろう。GPUを利用するデータベースの構築が進み、広範なデータベース市場における新しいレベルの議論が始まっている。

 GPUはこれから多くのシステムに普及するだろう。そして並列処理できるクエリとそうでないクエリを分類し、クエリのワークロードに応じてGPUとCPUを使い分ける技術が進歩していくと思う。

——RDBMS(リレーショナルデータベース管理システム)でどんなジョブも処理できると考えられた時代もあった。今はデータ処理の幅が広がった。

カーティス氏 ほとんどのデータベースは必要な処理に対応できる。問題はそれを速く効率的に行えるかだ。私の知る限り、あらゆる処理に最適に対応できる万能のデータベースは存在しない。

 そこで「NoSQL」が登場した。大規模なリレーショナルシステムはスケーリングが難しく、維持費がかかるため、市場にギャップがあったからだ。しかし、リレーショナルSQLが万能ではないように、NoSQLも万能ではない。

 今後はオペレーションと分析をハイブリッドで処理するHOAP(hybrid operational and analytic processing)の導入が進むだろう。これは、トランザクションの一部としてデータを渡せば、そのわずかな機会を利用してトランザクションに対する分析やアクションを行うというものだ。

 企業はそうした機能を求めているが、実現は簡単ではない。企業は連続したつながりの中でビッグデータ分析をすることを求めている。

 必要性と切望がアナリティクスのさまざまなユースケースを生み出す。GPUの活用もその1つであり、大量のデータを高速で分析したいという欲求が推進につながっている。

0 件のコメント:

コメントを投稿