in reply to
Re: selecting columns from a tab-separated-values file
in thread selecting columns from a tab-separated-values file
Read and write larger chunks of the file to minimise the number of seeks the read heads need to make.
Sometimes there's the luxury of having two hard drive spindles. Use one for reading, the other for writing, and find your I/O-bound application much sped up. (It works even when the other spindle is over a network share.) Or the other kind of luxury of having an SSD: costless seeks.