Я пишу приложение, которое должно хранить много файлов до примерно 10 миллионов.
В настоящее время они называются UUID и будут составлять около 4 МБ каждый, но всегда одного размера. Чтение и запись из/в эти файлы всегда будут последовательными.
2 основных вопроса Я ищу ответы для:
1) Какая файловая система была бы лучше для этого. XFS или ext4? 2) Нужно ли хранить файлы под подкаталогами, чтобы уменьшить количество файлов в пределах одного каталога?
В вопросе 2 я отмечаю, что люди пытались обнаружить ограничение XFS для количества файлов, которые вы можете хранить в одном каталоге, и не нашли предела, превышающего миллионы. Они не отметили никаких проблем с производительностью. Как насчет под ext4?
Взаимодействуя с людьми, которые делают подобные вещи, некоторые люди предложили сохранить номер inode в качестве ссылки на файл вместо имени файла для производительности (это в индексе базы данных, который я также использую). Однако я не вижу полезного API для открытия файла по номеру inode. Похоже, это было скорее предложение улучшить производительность в ext3, который я не собираюсь использовать, кстати.
Каковы ограничения ext4 и XFS? Какие преимущества в производительности есть у одного из них, и можете ли вы увидеть причину использования ext4 над XFS в моем случае?