-
-
Notifications
You must be signed in to change notification settings - Fork 164
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Autocomplete: stricter housenumber matching #1308
Comments
Looking at what we currently have in production there doesn't seem to be any significant noise issues (showing other house numbers on the same street). The reason for this seems to be that the house number is being matched against the
...so I'm not sure why the subquery isn't already a MUST |
Just came across this old issue that I don't recall from last year. I think the code is effectively meant to link to this line, which doesn't appear to have changed: Line 51 in e379a5f
I think that the housenumber and street specific query clauses are not having much of an effect, since as mentioned the full address is also included in a The only effect I imagine these two query clauses are having is to boost address records. As we are looking at in #1430 and elsewhere, we may or may not want this scoring boost. I also bet that we could improve performance by skipping these |
We need to ensure that Ideally we wouldn't show the incorrect versions at all, but the extra noise may be a fair compromise, so long as the ranking is preserved. |
Hello. I have a question regarding the behavior of Pelias autocomplete requests containing street suffixes and prefixes. If I search on autocomplete with "Tartu mnt 5" (mnt = street/road in Estonian) I get results with number "5" only. I've looked into the ElasticSearch queries for both requests and I see the difference causing this. My question is why this behavior was chosen? As a user, I would expect that the first result to be "Tartu mnt 5", but also to have other options as well (so that I don't have to write the entire number) regardless of whether or not I write "mnt". A possible list could be "Tartu mnt 5", "Tartu mnt 55", "Tartu mnt 57". Thank you |
We just merged #1469 which removes the fields mentioned in this issue. Overall, they cause more issues with POI matches than they appear to be worth, at least in their current form. Exploring queries that account for missing fields would be great follow up work. |
We currently consider
housenumber
as a'SHOULD'
match condition for autocomplete.https://github.com/pelias/api/blob/master/query/autocomplete.js#L29
We could probably move this to a
'MUST'
condition to improve performance and reduce noise.I suspect the reason we have this as a SHOULD is to handle the case where the house number doesn't exist in the index, in this case we would return 0 results for a MUST query.
It's probably possible to rewrite these subqueries to be MUST and match
term OR NULL
using something like https://www.elastic.co/guide/en/elasticsearch/reference/current/null-value.html, or https://www.elastic.co/guide/en/elasticsearch/reference/2.3/query-dsl-missing-query.htmlThe text was updated successfully, but these errors were encountered: