If you use a hash table, that sort of defeats the purpose of sockmark's availability. The only good thing about hash table is that you can sockread it into a binary variable and refer to the info with the -b switch. It's useful when you have a massive amount of data to be fetched.
P.S. jaytea may have a say on this if he figures what I figure is incorrect.