[Zope] Finding a match in a large dataset - btrees?
Cameron Beattie
kjcsb at orcon.net.nz
Mon Dec 5 20:55:08 EST 2005
Thanks for the many replies. I apologise for the original message which was
obviously very unclear - I will try to correct that.
Basically I want to match a telephone number to a rate table. Assume the
following rate table:
Telephone code Rate
649 1
6421 2
6422 2.5
64 1.5
The following table sets out the appropriate rate to return for a given
telephone number
Dialled number Returned rate
649123 1
643123 1.5
6421111 2
64221 2.5
Things to note:
If there is no match the right-most digit is removed until there is a match
e.g. 643123 matches to 64
The length of the "dialled number" is not consistent e.g. 649123 vs 64221
The length of the "telephone code" is not consistent e.g. 64 vs 6422
I want to do this frequently and at low cost i.e. ideally in memory. Perhaps
the best way is to write a procedure in MySQL however I am interested in any
python-based alternatives.
Regards
Cameron
More information about the Zope
mailing list