...
This feature enables the user to spellcheck a potential query based on the data which is loaded in Squirro. There for we make use of the Elasticsearch suggester functionality.
...
Code Block |
---|
'spellcheck': {'original': 'squiro', 'corrected': 'squirro'} |
Further improvements
We see some possible improvements, since the suggester of Elasticsearch only allows requests on specific and single indices:
creating of a new indices which is used for the spellchecking
sending multiple requests to gather suggestions from various fields
A ES query fails if we provide a non existing indices to the spellchecker, since the ES suggester only takes single index field names without wildcards.
decoupling from the query execution
a-priory checks if the provided index exists
We could tackle the problem by loading the tokens into a dictionary as middle layer and access it via a python spellcheck library (e.g.
pyspellchecker
), if we run into performance issues with the current approach.