Если вы отслеживаете отдельных пользователей в соответствии с предложением «таким образом отслеживать их улучшение с течением времени», я бы начал с того, что это каталог верхнего уровня. Однако даже это может привести к переполнению каталога при увеличении количества пользователей.
В одном приложении, которое я написал, где мне нужно было создать файл для каждого пользователя в системе, я написал подпрограмму (на самом деле на стороне базы данных), которая разбивала их уникальный идентификатор на структурированный набор папок.
Например: пользователь 12345 для загрузки № 5 может быть сохранен в UPLOAD_DIR / 1/2/3/4/5 / upload_5.png
Если вы хотите что-то менее «догадывающееся», вы все равно можете использовать что-то похожее на вышеприведенное, но вместо того, чтобы просто использовать их идентификатор, вы можете хешировать это, но следуйте аналогичному шаблону.