0

Note, I am not looking for opinions but examples from someone who has done this.

We have a database of ~20,000 persons. We currently use Examine/Lucene to index the names and allow searching by a freeform text field where a user could enter a first name, last name or both. We are looking to improve results as the Lucene fuzzy search is not quite meeting our needs.

We are looking to invest in the Peacock nickname database and add it to our existing SQL Server database. I am wracking my brain on how best to use this nickname data.

I could combine the first name with the possible nicknames and index that in the search collection. But would that be any faster than if I kept the separate in the index? How about just performing a SQL query against the names/nicknames and not use Lucene?

Connie DeCinko
  • 996
  • 5
  • 19
  • 39
  • 1
    Despite your first sentence this can only be opinion based as you don't give us much to go on. Is this a partial match search that finds better matches as the user types? You say *not quite meeting our needs.*, but you fail to explain what didn't workout and what a solution needs to have or be capable of. Giving anything on performance is close to useless as it depends on your exact hardware, OS, Server config and network layout. – rene Aug 03 '16 at 21:12
  • Which is typically faster, searching for one person among 20,000 records, a SQL query or against a Lucene search index? – Connie DeCinko Aug 03 '16 at 21:17
  • A sql [query](http://data.stackexchange.com/stackoverflow/query/520819) can return 21 rows of a partial search of over 5,500,000 rows in 169 ms. I don't have a Lucene engine handy but I guess someone else can provide that. Then you can compare stuff ... – rene Aug 03 '16 at 21:23

0 Answers0