Skip to main content
QUICK REVIEW

[論文レビュー] BigSparse: High-performance external graph analytics

Sang Woo Jun, Andy Wright|arXiv (Cornell University)|Oct 21, 2017
Graph Theory and Algorithms参考文献 16被引用数 9
ひとこと要約

BigSparse は、DRAM が限られたマシン上でテラバイトスケールのグラフを高速に処理できる完全外部グラフ分析システムである。両方のエッジおよび頂点データを SSD に格納することで、DRAM を最小限に抑え、頂点更新のログ記録、I/O オーバーヘッドを最小限に抑えるためにソーティングとリダクションをインタリーブし、メモリ内およびセミ外部システムを凌駆する性能を発揮する。32–64GB の DRAM での動作でも、大規模グラフ処理において優れた性能を示す。

ABSTRACT

We present BigSparse, a fully external graph analytics system that picks up where semi-external systems like FlashGraph and X-Stream, which only store vertex data in memory, left off. BigSparse stores both edge and vertex data in an array of SSDs and avoids random updates to the vertex data, by first logging the vertex updates and then sorting the log to sequentialize accesses to the SSDs. This newly introduced sorting overhead is reduced significantly by interleaving sorting with vertex reduction operations. In our experiments on a server with 32GB to 64GB of DRAM, BigSparse outperforms other in-memory and semi-external graph analytics systems for algorithms such as PageRank, BreadthFirst Search, and Betweenness-Centrality for terabyte-size graphs with billions of vertices. BigSparse is capable of highspeed analytics of much larger graphs, on the same machine configuration.

研究の動機と目的

  • 頂点データを格納するために大容量の DRAM を必要とするメモリ内およびセミ外部グラフシステムのスケーラビリティ制限を克服すること。
  • 補助記憶装置における細粒度のランダム I/O の性能ボトルネックを、順次アクセスパターンを可能にする仕組みで克服すること。
  • 頂点データが利用可能な DRAM 容量を超える場合でも、高い性能を維持できる完全外部システムを設計すること。
  • 頂点更新のソーティングに起因する I/O オーバーヘッドを、ソーティングとリダクション操作をインタリーブすることで最小限に抑えること。
  • 高価なメモリスケーリングに頼らず、安価な SSD ストレージを用いて、1ノードで数十億頂点のグラフに対するコスト効率の高い分析を可能にすること。

提案手法

  • 頂点データとエッジデータの両方を SSD アレイに格納し、頂点データをメモリに保持しない。
  • ランダム書き込みを避けるために、すべての頂点更新を外部にログ記録することで、ランダム I/O オーバーヘッドを低減する。
  • 更新ログをバッチ単位でソートすることで、ランダムアクセスパターンを順次 I/O 操作に変換する。
  • マージフェーズ中にソーティングとリダクションをインタリーブし、中間データサイズを段階的に縮小する。
  • メモリ内マージソートフェーズに続いて外部マージリダクションを実行することで、SSD へのデータ移動を最小限に抑える。
  • 現実のグラフに見られる高い局所性を活用し、リダクションを加速することで、最初のマージフェーズ後に中間データサイズを最大 90% 減少させる。

実験結果

リサーチクエスチョン

  • RQ1完全外部グラフシステムは、大幅に少ない DRAM を必要としながらも、メモリ内システムと同等の性能を達成できるか?
  • RQ2頂点更新処理における I/O オーバーヘッドを最小限に抑えるために、ソーティングとリダクションをインタリーブすることはどの程度有効か?
  • RQ3頂点データがメモリ容量を超える状況下で、最小限の DRAM(例:32–64GB)を搭載したシステムが、セミ外部システムをどの程度上回る性能を発揮できるか?
  • RQ4BigSparse は、PageRank や Betweenness-Centrality のようなスパarsなアルゴリズムを、大規模グラフ上でどのように高い性能を維持できるか?
  • RQ5外部グラフ処理におけるフラッシュストレージの摩耗とシステム I/O 効率に、データリダクションが及ぼす影響は何か?

主な発見

  • DRAM が 32–64GB に制限された状況下でも、BigSparse は Web Data Commons(35億頂点)のようなテラバイトスケールのグラフ処理において、メモリ内およびセミ外部システム(FlashGraph や X-Stream)を凌駆する性能を示した。
  • 48GB のメモリを搭載した Web Data Commons グラフでは、BigSparse が唯一、テストされた全アルゴリズム(PageRank、BFS、Betweenness-Centrality)に対して高速な分析を実行できた。
  • ソーティングとリダクションをインタリーブすることで、ソーティングを先に実行してからリダクションを行う場合と比較して、ストレージへのデータ移動量が最大 90% 減少した。
  • 最初のメモリ内マージフェーズ後、Twitter グラフでは中間データが 80% 以上、WDC グラフでは 90% 以上にまで縮小され、I/O ボリュームが顕著に低減した。
  • BigSparse は CPU 利用率が 1800% に達したが、FlashGraph(3200%)や X-Stream(3200%)と比較して顕著に低く、ストレージ制限の性能によりリソース利用効率が向上した。
  • システムはフラッシュのライトアンプリフィケーションを低減し、SSD に書き込むデータサイズを元の途中データサイズの 5–10% のみに抑え、フラッシュの寿命を延長するとともに I/O 効率を向上させた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。