2
votes

I have a scenario where a customer decided to use Elastic Search instead of Azure Search, mainly due to challenges with how Azure Search was scoring and a lack of customizability with plugins. I'm looking for guidance on the following to see if Azure Search functionality has changed at all or can currently handle the following requirements without a lot of customization:

  1. Scoring – Azure Search uses the default TF/IDF algorithm to assign scores to the documents returned. My customer's clients are searching on entities (people and businesses) in the data, so TF/IDF is not nearly as relevant as a matching score to show how close the name searched is to the name that appears in the result document. ElasticSearch allows for functionality called “Rescoring” where you can customize the way the returned document is scored to better suit your needs. The Rescore is achieved by passing a Rescore clause in the query itself. In the customer's current ElasticSearch deployment, the score they return with a given document is between 0 and 1 (0% and 100%) based on how closely the name in the document matches the name that was queried.

  2. Custom plugins – ElasticSearch allows for custom plugins that are basically scripts that allow you to customize ElasticSearch’s behavior to be more flexible to meet particular needs of its users. The ES community has contributed many great plugins, and my customer uses two of them that are integral to their search experience. Azure Search doesn’t or didn't have this functionality at the time.

Thanks

1
Which custom plugins are they using for ElasticSearch?Mick

1 Answers

1
votes

About the first topic, the alternative would be a scoring profile:

https://docs.microsoft.com/en-us/azure/search/index-add-scoring-profiles

for the second one, not sure which plugins you're talking about. Azure Search allows custom analyzers:

https://docs.microsoft.com/en-us/azure/search/index-add-custom-analyzers