... have to read record by record from the disk and only take the fields you currently need to keep the payload as small as possible. However, I have noticed almost no speed difference when I read the entire DBF and create the filter (which is practically an index) in memory, compared to reading record ...