[ https://issues.apache.org/jira/browse/AURORA-1847?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15729355#comment-15729355 ]
Mehrdad Nurolahzade commented on AURORA-1847: --------------------------------------------- *Note:* {{TaskStoreBenchmarks.MemFetchTasksBenchmark}} is currently broken due to missing/bad Guice configuration in {{setUp()}}. Look at {{DBFetchTasksBenchmark.setUp()}} for more information. > Eliminate sequential scan in MemTaskStore.getJobKeys() > ------------------------------------------------------ > > Key: AURORA-1847 > URL: https://issues.apache.org/jira/browse/AURORA-1847 > Project: Aurora > Issue Type: Story > Components: Efficiency, UI > Reporter: Mehrdad Nurolahzade > Priority: Minor > Labels: newbie > > The existing {{TaskStoreBenchmarks}} shows {{DBTaskStore}} is almost two > orders of magnitude faster than {{MemTaskStore}} when it comes to > {{getJobKeys()}}: > {code} > Benchmark (numTasks) Mode Cnt > Score Error Units > TaskStoreBenchmarks.DBFetchTasksBenchmark.run 10000 thrpt 5 > 320271.082 ± 30842.727 ops/s > TaskStoreBenchmarks.DBFetchTasksBenchmark.run 50000 thrpt 5 > 334805.551 ± 20435.139 ops/s > TaskStoreBenchmarks.DBFetchTasksBenchmark.run 100000 thrpt 5 > 317395.890 ± 45302.180 ops/s > TaskStoreBenchmarks.MemFetchTasksBenchmark.run 10000 thrpt 5 > 624.944 ± 54.038 ops/s > TaskStoreBenchmarks.MemFetchTasksBenchmark.run 50000 thrpt 5 > 91.335 ± 9.241 ops/s > TaskStoreBenchmarks.MemFetchTasksBenchmark.run 100000 thrpt 5 > 27.712 ± 8.128 ops/s > {code} > If scheduler is configured to run with the {{MemTaskStore}} every hit on > scheduler page ({{/scheduler}}) causes a call to > {{MemTaskStore.getJobKeys()}}. > The implementation of this method is currently very inefficient as it results > in a sequential scan of the task store and then mapping to their respective > job keys. The sequential scan and mapping to job key can be eliminated by > simply returning the key set of the existing secondary index {{job}}. -- This message was sent by Atlassian JIRA (v6.3.4#6332)