At 07:55 2017-04-12, Ken Dibble <[email protected]> wrote:
Hi folks,
I've been thinking of how I can improve the ability of my users to
find people's names in a system that has over 30,000 people in it.
I've looked at soundex, and I've considered munging names to remove
spaces, apostrophes, hyphens, etc. The thing about those approaches
is that in order to be efficient, they require pre-processing all of
the names in the system and storing the results, which can then be
queried to find matches.
Unfortunately, that would require modifications to the database,
which I try to avoid due to the downtime they require.
Why would that be an issue of consequence?
You add some columns to a table. The rest of the software can
ignore them. (Unless you use select * or other black arts, said rest
might never see the new columns.)
You can split up the task.
Write your code for filling in the new columns in your
add/change code. Then, write a utility to fill in the rest. Then,
implement the searching.
I'm looking for suggestions on how to produce results that include
close matches on last names that doesn't require pre-processing.
I can not see that the preprocessing would be very involved.
I've played with various schemes to assign "weights" to matches
based on the number of matching letters, but they all end up being
very slooooow and also producing too many false positives.
I suppose there are no easy answers, but if anyone has an algorithm
for this kind of thing that they would be willing to share, I'd be grateful.
There are not, because different languages assign different
values to the Roman alphabet characters. You are going to have
decide on language trade-offs.
Sincerely,
Gene Wirchenko
_______________________________________________
Post Messages to: [email protected]
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message:
http://leafe.com/archives/byMID/profox/2eb6450d3c82b371fab23887f16e244e@mtlp000086
** All postings, unless explicitly stated otherwise, are the opinions of the
author, and do not constitute legal or medical advice. This statement is added
to the messages for those lawyers who are too stupid to see the obvious.