я делал подобную реализацию лет ндацть назад.
типо база данных для постов + генерируемые комменты.
все хранилось в текстовом файле. каждой записи выдавался блок на N байт
таким образом по номеру записи можно вычислить смещение откуда читать блок размером N байт
в стриме до сих пор часть полей у галеры именно так и хранится