If the size of the data is small, a linear search through a contiguous array is going to be far faster than anything more complex.
It's also definitely going to depend on the cost of the hash function and comparison function - for something like strings, where those can be quite expensive, binary search probably has a better chance of applicability than for guid's say.