[論文レビュー] High-Speed Query Processing over High-Speed Networks
本稿では、RDMAおよび低遅延ネットワークスケジューリングを活用して、高速InfiniBandクラスタにおけるTCPのオーバーヘッド、スイッチの競合、負荷の不均衡を克服するハイブリッド並列クエリ実行エンジンを提示する。ローカル並列処理と分散並列処理を分離し、新規の通信マルチプレクサを採用することで、6台のサーバー上でスケールファクタ100のTPC-Hで3.5倍の高速化を達成し、現代の高帯幅ネットワーク上で真の高速クエリ処理を実現した。
Modern database clusters entail two levels of networks: connecting CPUs and NUMA regions inside a single server in the small and multiple servers in the large. The huge performance gap between these two types of networks used to slow down distributed query processing to such an extent that a cluster of machines actually performed worse than a single many-core server. The increased main-memory capacity of the cluster remained the sole benefit of such a scale-out. The economic viability of high-speed interconnects such as InfiniBand has narrowed this performance gap considerably. However, InfiniBand's higher network bandwidth alone does not improve query performance as expected when the distributed query engine is left unchanged. The scalability of distributed query processing is impaired by TCP overheads, switch contention due to uncoordinated communication, and load imbalances resulting from the inflexibility of the classic exchange operator model. This paper presents the blueprint for a distributed query engine that addresses these problems by considering both levels of networks holistically. It consists of two parts: First, hybrid parallelism that distinguishes local and distributed parallelism for better scalability in both the number of cores as well as servers. Second, a novel communication multiplexer tailored for analytical database workloads using remote direct memory access (RDMA) and low-latency network scheduling for high-speed communication with almost no CPU overhead. An extensive evaluation within the HyPer database system using the TPC-H benchmark shows that our holistic approach indeed enables high-speed query processing over high-speed networks.
研究の動機と目的
- 高速クラスタにおけるTCPのオーバーヘッド、スイッチの競合、負荷の不均衡によって引き起こされる分散クエリ処理の性能劣化を是正すること。
- NUMAおよびマルチサーバ環境における古典的な交換オペレータのスケーラビリティ制限を克服すること。
- 分散クエリエンジンの再設計により、高帯幅InfiniBandネットワーク上で高速クエリ処理を可能にすること。
- ハードウェアの進歩だけでは、スケーラブルな分析ワークロードに対して十分ではなく、対応するソフトウェア最適化が不可欠であることを示すこと。
- CPUのオーバーヘッドを最小限に抑え、複数のネットワークレベルに跨る効率的なRDMAベースのデータ転送を可能にする通信マルチプレクサの設計
提案手法
- サーバー内でのローカルなミスル駆動並列処理と、サーバー間通信に用いる分離された交換オペレータを区別するハイブリッド並列処理を導入する。
- RDMAを用いてゼロコピー転送を実現し、CPUのオーバーヘッドをほぼゼロに抑える新規の通信マルチプレクサを採用する。
- 低遅延ネットワークスケジューリングを適用し、データフローを動的にバランスさせ、高速InfiniBandネットワークにおけるスイッチ競合を回避する。
- NUMAに配慮したデータシャッフルのインスピレーションを受けて、同期コストを最小限に抑えるラウンドロビンスケジューリング戦略を採用する。
- サーバ内(QPI)とサーバ間(InfiniBand)のネットワークを別々の通信レイヤとして扱いながらも、連携可能な二段階のネットワーク認識設計を実装する。
- クラスタサイズやコア数を変化させた状況下で、HyPer主記憶装置データベース内でのシステム評価を、TPC-Hベンチマークを用いて実施する。
実験結果
リサーチクエスチョン
- RQ1RDMAと最適化されたスケジューリングを用いる場合、高帯域幅の複数サーバー間で分散クエリエンジンが線形的なスケーラビリティを達成できるか?
- RQ2ローカル並列処理と分散並列処理を分離するハイブリッド並列処理は、モノリックな交換オペレータと比較して、スケーラビリティをどのように向上させるか?
- RQ3TCP/IPのオーバーヘッドとスイッチ競合は、InfiniBandのような高速ネットワークにおいて、性能にどの程度の制限を及えるか?
- RQ4ミリ秒未塔の応答時間を達成する低遅延ネットワークスケジューリングは、高スルーレート分析ワークロードにおけるスイッチ競合を効果的に緩和できるか?
- RQ5サーバ内とサーバ間の通信レイヤーを統合的に制御する包括的設計は、現代の高メモリ・高帯域幅クラスタの潜在能力を最大限に引き出せるか?
主な発見
- 提案されたハイブリッド並列処理は、スケールファクタ100のTPC-Hにおいて6台のサーバーにスケーリングした際、単一サーバーと比較して3.5倍の高速化を達成し、従来の交換オペレータを著しく上回った。
- RDMAの採用により、CPUのオーバーヘッドがほぼゼロに低下し、TCP処理とメモリバストラフィックが引き起こす性能ボトルネックが解消された。
- スイッチ競合は、高速ネットワークにおいて深刻な性能制限要因となるが、高速なアプリケーションレベルのスケジューリングがなければ解消できない。本研究で提案するスケジューラーは、ミクロ秒単位で応答し、混雑を防止する。
- RDMAと知的なネットワークスケジューリング、ハイブリッド並列処理の組み合わせにより、単一サーバー処理とクラスタベース処理の性能差が解消された。
- InfiniBand 4× QDR環境において、ほぼ理想に近いスケーラビリティを達成した。これは、ハードウェア帯域幅だけでは不十分であり、ソフトウェアレベルの最適化が不可欠であることを示している。
- 評価結果から、ギガビットイーサーネットの32倍の帯域幅を持つにもかかわらず、RDMAとスケジューリングがなければ性能が劣化することを示しており、スタック全体の最適化の必要性が浮き彫りになった。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。