forked from apache/kudu
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[c++ client] AUTO_FLUSH_BACKGROUND optimizations
Optimizations after initial performance testing of the Kudu C++ client library with AUTO_FLUSH_BACKGROUND flush mode support. The most important tuning is the default flush watermark for the mutation buffer. Changing it from 80% to 50% gave near 30% performance boost in throughput for scenarios when a client pushes data to the server as fast as it can, using workloads of 8M rows like (int64, int32, string, string, int) where strings are about 32 bytes long in average. Each thread ran its own single-session KuduClient, where each session was running in AUTO_FLUSH_BACKGROUND flush mode. 1-thread insertion (8M rows per thread) 80% watermark: total : 35229.7 ms per row: 0.00440372 ms 50% watermark: total : 22562.8 ms per row: 0.00282035 ms 2-thread insertion (4M rows per thread) 80% watermark: total : 19683.6 ms per row: 0.00246046 ms 50% watermark: total : 12931.8 ms per row: 0.00161647 ms 4-thread insertion (2M rows per thread) 80% watermark: total : 11941.9 ms per row: 0.00149274 ms 50% watermark: total : 7724.68 ms per row: 0.000965585 ms Other related session parameters: mutation buffer size: 7M (default) maximum number of batchers: 2 (default) time-based flush interval: 1 second (default) The tests were run dual Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz (12 cores per CPU) with 98GiB of memory. This is a follow-up for 93be131. Change-Id: I1f0aa6d02c51bb063498709e8570e8c7214a31a0 Reviewed-on: http://gerrit.cloudera.org:8080/4308 Tested-by: Kudu Jenkins Tested-by: Alexey Serbin <[email protected]> Reviewed-by: David Ribeiro Alves <[email protected]>
- Loading branch information
1 parent
af7f9c8
commit 7959cd4
Showing
5 changed files
with
10 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters