-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Improve DocDB and IntentAwareIterator performance
Summary: Improve DocDB and IntentAwareIterator performance by: - avoids a few duplicate DocHybridTime decoding and KeyBytes encoding in DocRowwiseIterator::HasNext() and BuildSubDocument() - avoids extra IntentAwareIterator::FetchKey() in DocRowwiseIterator::HasNext() to check for infinite loop. - avoids extra buffer malloc in IntentAwareIterator::SeekOutOfSubDoc() - reserves buffer IntentAwareIterator::SeekForward() These changes bring about 15% improvement in CassandraPersonalization read workload. Test Plan: Before: ``` java -jar ~/code/yugabyte/java/yb-loadtester/target/yb-sample-apps.jar -workload CassandraPersonalization -nodes 127.0.0.1:9042 -nouuid -max_written_key 10 -read_only -num_threads_write 0 -num_threads_read 1 ... 2018-04-17 16:51:56,662 [INFO|com.yugabyte.sample.common.metrics.MetricsTracker|MetricsTracker] Read: 38.20 ops/sec (26.21 ms/op), 1336 total ops | Write: 0.00 ops/sec (0.00 ms/op), 0 total ops | Uptime: 35021 ms | maxWrittenKey: 10 | maxGeneratedKey: 10 | 2018-04-17 16:52:01,662 [INFO|com.yugabyte.sample.common.metrics.MetricsTracker|MetricsTracker] Read: 38.19 ops/sec (26.14 ms/op), 1527 total ops | Write: 0.00 ops/sec (0.00 ms/op), 0 total ops | Uptime: 40022 ms | maxWrittenKey: 10 | maxGeneratedKey: 10 | 2018-04-17 16:52:06,662 [INFO|com.yugabyte.sample.common.metrics.MetricsTracker|MetricsTracker] Read: 37.80 ops/sec (26.45 ms/op), 1716 total ops | Write: 0.00 ops/sec (0.00 ms/op), 0 total ops | Uptime: 45022 ms | maxWrittenKey: 10 | maxGeneratedKey: 10 | ``` After: ``` Uptime: 30020 ms | maxWrittenKey: 10 | maxGeneratedKey: 10 | 2018-04-17 16:53:47,584 [INFO|com.yugabyte.sample.common.metrics.MetricsTracker|MetricsTracker] Read: 44.16 ops/sec (22.63 ms/op), 1548 total ops | Write: 0.00 ops/sec (0.00 ms/op), 0 total ops | Uptime: 35025 ms | maxWrittenKey: 10 | maxGeneratedKey: 10 | 2018-04-17 16:53:52,589 [INFO|com.yugabyte.sample.common.metrics.MetricsTracker|MetricsTracker] Read: 44.55 ops/sec (22.51 ms/op), 1771 total ops | Write: 0.00 ops/sec (0.00 ms/op), 0 total ops | Uptime: 40030 ms | maxWrittenKey: 10 | maxGeneratedKey: 10 | 2018-04-17 16:53:57,589 [INFO|com.yugabyte.sample.common.metrics.MetricsTracker|MetricsTracker] Read: 44.20 ops/sec (22.53 ms/op), 1992 total ops | Write: 0.00 ops/sec (0.00 ms/op), 0 total ops | Uptime: 45030 ms | maxWrittenKey: 10 | maxGeneratedKey: 10 | ``` Reviewers: sergei, mikhail Reviewed By: mikhail Subscribers: ybase Differential Revision: https://phabricator.dev.yugabyte.com/D4539
- Loading branch information
1 parent
251da68
commit 5dc30fc
Showing
11 changed files
with
131 additions
and
78 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
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
Oops, something went wrong.