Closed
Bug 678107
Opened 15 years ago
Closed 15 years ago
Test search performances with large number of results from ElasticSearch
Categories
(Socorro :: General, task)
Socorro
General
Tracking
(Not tracked)
RESOLVED
FIXED
2.2.2
People
(Reporter: adrian, Assigned: adrian)
Details
Attachments
(2 files)
|
64.42 KB,
text/plain
|
Details | |
|
2.37 KB,
patch
|
lonnen
:
review+
|
Details | Diff | Splinter Review |
We should make sure that asking for a very large amount of data (in our case, distinct signatures) has an impact on performances with ElasticSearch. Should be tested both from the UI and directly on the server side.
If performances appear to have a real impact, we should limit the number of results we get.
| Assignee | ||
Comment 1•15 years ago
|
||
Here is the result of my performance tests. What I call the "number of results" is the number of distinct signatures I ask during the first query a search runs (the second one being doing facets on the first 100 signatures).
It is clear from those results that asking for a large number of results when there is a large number of results is slow. Limiting this number to 1,000 is particularly efficient for huge queries (see the first one, a month of data, product = firefox, os = all).
Anurag, Daniel, do you think this is enough to say that that specific number is a point of failure and we should do something about it, or do you want to run more tests?
Comment 2•15 years ago
|
||
i would say that fetching more than 1K reuslts in single query should be avoided as far as possible coz u r not only hitting CPU/RAM but also network traffic for such large datasets and run the risk of crashing the client too
Comment 3•15 years ago
|
||
I think that these timing results definitely seem to point at using a limit of 100 or 1000 to be a very good thing to keep the website feeling responsive and save load on the search cluster.
I think we should push this to socorro-dev and see if Kairo and Laura agree to make it a limitation to the ES functionality when released.
| Assignee | ||
Comment 4•15 years ago
|
||
Some ideas to solve this problem:
* Limiting the maximum number of distinct signatures to 1,000. Period.
* Limiting the maximum number of distinct signatures to the number of results needed for the current request (= page offset + number of results per page) plus 1,000. This way if the user wants to see all the results he can (even if it will be long to get to page 300), and we reduce the number of processed signatures for the majority of searches.
Any other idea would be appreciated.
Comment 5•15 years ago
|
||
Do this:
* Limiting the maximum number of distinct signatures to 1,000. Period.
| Assignee | ||
Comment 6•15 years ago
|
||
Option 1 is implemented and can be tested on khan: http://agaudebert.khan.mozilla.org/query
Maybe we should add a little something to say that we limit the number of results to 1,000? Like "1,000+ Results"?
| Assignee | ||
Comment 7•15 years ago
|
||
This patch adds a new configuration key, and limit the number of results we get from ES to this number. By default the number is 1,000.
Attachment #554261 -
Flags: review?(chris.lonnen)
| Assignee | ||
Updated•15 years ago
|
Target Milestone: 2.3 → 2.2.2
Comment 8•15 years ago
|
||
Comment on attachment 554261 [details] [diff] [review]
Limit number of results to 1,000
'limitate' should be limits in the elasticsearch.py changes, and in webapiconfig doc string you're adding "can" might be more accurate as "should".
Fix those and this is r+.
Attachment #554261 -
Flags: review?(chris.lonnen) → review+
| Assignee | ||
Comment 9•15 years ago
|
||
Last patch (with fixed typos) landed on trunk with commit r3473: http://code.google.com/p/socorro/source/detail?r=3473
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Updated•15 years ago
|
Flags: in-testsuite?
Updated•14 years ago
|
Component: Socorro → General
Product: Webtools → Socorro
Updated•14 years ago
|
Flags: in-testsuite?
You need to log in
before you can comment on or make changes to this bug.
Description
•