По моему опыту, это зависит от файловой системы (и даже от поставщика хранилища) ... за исключением того, что выбор # 1 ("Просто выгрузить все в одном месте") почти наверняка будет плохим.
Мы столкнулись с подобной проблемой и пошли с вариантом # 2. В нашем случае у нас были десятки миллионов пользователей, каждый из которых имел от 10 до ~ 1000 файлов. Мы получили структуру, которая выглядела так:
аб \ CD \ эф \ all_the_files
Часть ab указала точку монтирования, а cd \ ef - это два уровня подпапок внизу.
Если вы будете испытывать значительную нагрузку ввода-вывода, я настоятельно рекомендую вам протестировать нашу конфигурацию на оборудовании и в сети, которую вы собираетесь использовать в масштабе. И, конечно же, подумайте, как вы можете делать резервные копии и восстанавливать части данных, если это необходимо.