Abstract
Redis is an open source high-performance in-memory key-value database supporting data persistence. Redis maintains all of the data sets and intermediate results in the main memory, using periodical persistence operations to write data onto the hard disk and guarantee the persistence of data. InfiniBand is usually used in high-performance computing domains because of its very high throughput and very low latency. Using RDMA technology over InfiniBand can efficiently improve network-communication’s performance, increasing throughput and reducing network latency while reducing CPU utilization. In this paper, we propose a novel RDMA based design of Redis, using RDMA technology to accelerate Redis, helping Redis show a superior performance. The optimized Redis not only supports the socket based conventional network communication but also supports RDMA based high-performance network communication. In the high-performance network communication module of optimized Redis, Redis clients write their requests to the Redis server by using RDMA writes over an Unreliable Connection and the Redis server uses RDMA SEND over an Unreliable Datagram to send responses to Redis clients. The performance evaluation of our novel design reveals that when the size of key is fixed at 16 bytes and the size of value is 3 KB, the average latency of SET operations of RDMA based Redis is between 53 µs and 56 µs. This is about two times faster than IPoIB based Redis. And we also present a dynamic Registered Memory Region allocation method to avoid memory waste.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Cattell, R.: Scalable SQL and NoSQL data stores. J. ACM Sigmod Record. 39(4), 12–27 (2010)
Huang, J., et al.: High-performance design of HBase with RDMA over InfiniBand. IEEE Int. Parallel Distrib. Process. Symp. 19, 774–785 (2012)
Redis. http://redis.io
HBase. http://hbase.apache.org
InfiniBand Trade Association. http://www.infinibandta.org
Memcached: High-Performance, Distributed Memory Object Caching System. http://memcached.org
Lim, H., Han, D., Andersen, D.G., et al.: MICA: a holistic approach to fast in-memory key-value storage. J. Manage. 15(32), 36 (2014)
Mitchell, C., Geng, Y.F., Li, J.Y.: Using one-sided RDMA reads to build a fast, CPU-efficient key-value store. In: Usenix Conference on Technical Conference, pp. 103–114. USENIX Association (2013)
Kalia, A., Kaminsky, M., Andersen, D.G.: Using RDMA efficiently for key-value services. J. ACM Sigcomm Comput. Commun. Rev. 44(4), 295–306 (2014)
Macarthur, P., Russell, R.D.: A performance study to guide RDMA programming decisions. In: IEEE, International Conference on High PERFORMANCE Computing and Communication & 2012 IEEE, International Conference on Embedded Software and Systems, pp. 778–785. IEEE (2012)
Keeton, B.K., Patterson, D.A., Hellerstein, J.M.: InfiniBand Architecture Specification, Volume 1.0, Release 1.0. InfiniBand Trade Association (2010)
Grun, P.: Introduction to InfiniBand for End Users. InfiniBand Trade Association (2010)
Shah, H., et al.: Direct data placement over reliable transports. J. Heise Zeitschriften Verlag (2007)
Recio, R., Metzler, B., Culley, P., et al.: A remote direct memory access protocol specification. J. Neurophys. 93(1), 467–480 (2007)
Wang, Y.D., et al.: C-Hint: an effective and reliable cache management for RDMA-accelerated key-value stores. In: ACM Symposium on Cloud Computing, pp. 1–13. ACM (2014)
Atikoglu, B., Xu, Y., Frachtenberg, E., et al.: Workload analysis of a large-scale key-value store. J. ACM Sigmetrics Perform. Eval. Rev. 40(1), 53–64 (2012)
Cooper, B.F., et al.: Benchmarking cloud serving systems with YCSB. In: ACM Symposium on Cloud Computing, pp. 143–154. ACM (2010)
Jose, J., et al.: Memcached design on high performance RDMA capable interconnects. In: IEEE International Conference on Parallel Processing, pp. 743–752. IEEE (2011)
Dragojevi, A., Narayanan, D., et al.: FaRM: fast remote memory. In: Usenix Conference on Networked Systems Design and Implementation. USENIX Association (2014)
Yang, X.J., et al.: The TianHe-1A supercomputer: its hardware and software. J. Comput. Sci. Technol. 26(3), 344–351 (2011)
Chen, Z.G., Xiao, N., Liu, F., Du, Y.M.: Reorder write sequence by hetero-buffer to extend SSD’s lifespan. J. Comput. Sci. Technol. 28, 14–27 (2013)
Acknowledgment
We are grateful to our anonymous reviewers for their suggestions to improve this paper. This work is supported by the National High-Tech Research and Development Projects (863) and the National Natural Science Foundation of China under Grant No. 2015AA015305, 61232003, 61332003, 61202121, 61402503, U1611261, 2016YFB1000302 and NSFC61402503. And we are grateful for this opportunity.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this paper
Cite this paper
Tang, W., Lu, Y., Xiao, N., Liu, F., Chen, Z. (2017). Accelerating Redis with RDMA Over InfiniBand. In: Tan, Y., Takagi, H., Shi, Y. (eds) Data Mining and Big Data. DMBD 2017. Lecture Notes in Computer Science(), vol 10387. Springer, Cham. https://doi.org/10.1007/978-3-319-61845-6_47
Download citation
DOI: https://doi.org/10.1007/978-3-319-61845-6_47
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-61844-9
Online ISBN: 978-3-319-61845-6
eBook Packages: Computer ScienceComputer Science (R0)