use hash map for string lookup, it's much faster for many columns
row detection: don't overwrite already set index
fixed sized column reading could start at any row when threads are used.