Abstract

In this paper, we attempt to improve the performance of a real-time stream processing by applying Apache Storm on InfiniBand. Apache Storm is a representative distributed framework for real-time stream processing, and InfiniBand is a high-performance communication standard. The default approach of running Storm on InfiniBand is to use IP over InfiniBand (IPoIB), which causes a serious CPU overload and fails to exploit high performance of InfiniBand. The CPU overload is mainly caused by frequent context switching and buffer copying operations. To solve this, we propose a new communication methodology using InfiniBand’s remote direct memory access (RDMA). In the proposed method, we replace the existing communication framework Netty to RJ-Netty, which is an RDMA/JXIO-based communication method. We can use Netty as well as RJ-Netty in Storm based on the preference. We also maximize the performance of RJ-Netty by applying multithreading on JXIO servers. Experimental results show that RJ-Netty significantly reduces CPU load while improving message throughput and complete latency compared to IPoIB as well as Ethernet. We believe that, as the first attempt to run Storm on InfiniBand, our approach is excellent in improving the processing performance of Storm by using InfiniBand RDMA functions.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call