Item type |
Symposium(1) |
公開日 |
2024-12-27 |
タイトル |
|
|
タイトル |
Redis Persistence Performance with Asynchronous I/O Integration |
タイトル |
|
|
言語 |
en |
|
タイトル |
Redis Persistence Performance with Asynchronous I/O Integration |
言語 |
|
|
言語 |
eng |
資源タイプ |
|
|
資源タイプ識別子 |
http://purl.org/coar/resource_type/c_5794 |
|
資源タイプ |
conference paper |
著者所属 |
|
|
|
Shibaura Institute of Technology |
著者所属 |
|
|
|
Shibaura Institute of Technology |
著者所属 |
|
|
|
Shibaura Institute of Technology |
著者所属 |
|
|
|
Shibaura Institute of Technology |
著者所属(英) |
|
|
|
en |
|
|
Shibaura Institute of Technology |
著者所属(英) |
|
|
|
en |
|
|
Shibaura Institute of Technology |
著者所属(英) |
|
|
|
en |
|
|
Shibaura Institute of Technology |
著者所属(英) |
|
|
|
en |
|
|
Shibaura Institute of Technology |
著者名 |
Le-gao, Chen
Yanzhi, Li
Tipporn, Laohakangvalvit
Midori, Sugaya
|
著者名(英) |
Le-gao, Chen
Yanzhi, Li
Tipporn, Laohakangvalvit
Midori, Sugaya
|
論文抄録 |
|
|
内容記述タイプ |
Other |
|
内容記述 |
In recent years, in-memory database servers have gained popularity due to advancements in memory and CPU architecture, which enables applications such as real-time analytics. Among those servers, Redis is the most widely adopted solution across various companies. However, data persistence in Redis causes severe performance degradation and resource consumption in the server. This is especially apparent in applications where payload sizes are big. This encouraged us to investigate way s to mitigate the effects of persistence on the whole system. We discovered that traditional Redis uses synchronous I/O on a background thread during persistence thus causing the thread and I/O device to block each other. While persistence operations are ongoing, the severe memory usage also causes the server throughput to slow down. This paper proposes a Redis with asynchronous I/O persistence to soften these effects on the system. Tests with different payload sizes were done to analyze the performance of asynchronous I/O and synchronous I/O under different data loads and conditions. Our proposed method resulted in a reduction of 2 to 11 seconds of time taken for persistence operations, causing a 500MB to 1.5GB reduction in memory usage, 0.3% to 13% reduction in CPU usage, and a 0.5% to 8.4% increase in request per second in 30-second segments when payload size is above 128KB. |
論文抄録(英) |
|
|
内容記述タイプ |
Other |
|
内容記述 |
In recent years, in-memory database servers have gained popularity due to advancements in memory and CPU architecture, which enables applications such as real-time analytics. Among those servers, Redis is the most widely adopted solution across various companies. However, data persistence in Redis causes severe performance degradation and resource consumption in the server. This is especially apparent in applications where payload sizes are big. This encouraged us to investigate way s to mitigate the effects of persistence on the whole system. We discovered that traditional Redis uses synchronous I/O on a background thread during persistence thus causing the thread and I/O device to block each other. While persistence operations are ongoing, the severe memory usage also causes the server throughput to slow down. This paper proposes a Redis with asynchronous I/O persistence to soften these effects on the system. Tests with different payload sizes were done to analyze the performance of asynchronous I/O and synchronous I/O under different data loads and conditions. Our proposed method resulted in a reduction of 2 to 11 seconds of time taken for persistence operations, causing a 500MB to 1.5GB reduction in memory usage, 0.3% to 13% reduction in CPU usage, and a 0.5% to 8.4% increase in request per second in 30-second segments when payload size is above 128KB. |
書誌情報 |
Proceedings of Asia Pacific Conference on Robot IoT System Development and Platform
巻 2024,
p. 37-44,
発行日 2024-12-27
|
出版者 |
|
|
言語 |
ja |
|
出版者 |
情報処理学会 |