[论文解读] High-Speed Query Processing over High-Speed Networks
本文提出了一种混合并行查询执行引擎,利用RDMA和低延迟网络调度,克服高速InfiniBand集群中TCP开销、交换机竞争和负载不平衡的问题。通过解耦本地并行与分布式并行,并使用新型通信多路复用器,该引擎在六台服务器上、规模因子为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数据传输。
提出的方法
- 引入混合并行机制,区分服务器内部的morsel驱动并行与服务器间通信的解耦交换算子。
- 采用新型通信多路复用器,利用RDMA实现零拷贝数据传输,并将CPU开销降至接近零。
- 应用低延迟网络调度,动态平衡数据流,避免高速InfiniBand网络中的交换机竞争。
- 采用类似NUMA感知数据重分布的轮转调度策略,以最小化同步开销。
- 实现两级网络感知设计,将服务器内(QPI)和服务器间(InfiniBand)网络视为独立但协调的通信层级。
- 在HyPer内存数据库中,使用TPC-H基准测试在不同集群规模和核心数量下评估系统性能。
实验结果
研究问题
- RQ1当使用RDMA和优化调度时,分布式查询引擎是否能在多个高带宽服务器上实现线性可扩展性?
- RQ2与单体交换算子相比,分离本地并行与分布式并行的混合并行机制在可扩展性方面有何提升?
- RQ3TCP/IP开销和交换机竞争在高速网络(如InfiniBand)上对性能的限制程度如何?
- RQ4具有亚毫秒级响应时间的低延迟网络调度是否能有效缓解高速分析工作负载中的交换机竞争?
- RQ5一种协调服务器内与服务器间通信层级的端到端设计,能否充分释放现代高内存、高带宽集群的全部潜力?
主要发现
- 所提出的混合并行机制在TPC-H规模因子100、扩展至六台服务器时,相比单服务器实现3.5倍加速,显著优于传统交换算子。
- 使用RDMA将CPU开销降至接近零,消除了由TCP处理和内存总线流量引发的性能瓶颈。
- 若无快速、应用级调度机制,交换机竞争会严重限制高速网络性能;所提出的调度器以微秒级响应时间防止拥塞。
- 通过结合RDMA、智能网络调度与混合并行机制,单服务器与集群查询处理之间的性能差距得以弥合。
- 系统在InfiniBand 4× QDR上实现了接近理想的可扩展性,表明仅靠硬件带宽不足以支撑高性能,必须依赖软件层面的优化。
- 评估结果表明,即使带宽是千兆以太网的32倍,若缺乏RDMA与调度机制,性能仍会下降——凸显全栈优化的必要性。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。