Логичнее кешировать будет в memcache, apcu, redis итд... То есть в ОЗУ, а не на диске. более того если вы будете сохранять кеш в файл при чтении 10 посл записей вы будет считывать условно говоря все несколько мегабайт? сделайте key-value хранилище. тот же redis позволяют делать более гибкие операции над данными, сортировка, limit offset итд
К слову сейчас и бд верно настроенные неплохо кешируют результаты запросов.