В нормальной системе, и файл и база размером в 1000-5000 строк после первого чтения будет висеть в кеше оперативки, и доступ будет примерно одинаковый.
Вот уже в зависимости от сложности запроса, может быть разница в том, как долго обрабатывать запрос.
При этом при работе с базой, которая крутится отдельным процессом и скорее всего запрос в нее будет выполняться на другом ядре, может дать прирост производительности. А может и не дать.
В общем в вашем случае нет смысла заниматься преждевременной оптимизацией. Либо делаете как удобно, либо пишете нагрузочный тест, и меряете на конкретном примере.