Ответ 1
Здесь есть хорошая статья о s3fs, которая после прочтения я прибегал к EBS Share.
В нем подчеркивается несколько важных соображений при использовании s3fs, а именно связанных с присущими ему ограничениями S3:
- файл не может превышать 5 ГБ
- вы не можете частично обновить файл, поэтому изменение одного байта будет повторно загружать весь файл. Операция
- на многих небольших файлах очень эффективна (каждый из них - отдельный объект S3), но большие файлы очень неэффективны.
- Хотя S3 поддерживает частичные /chunked загрузки, s3fs не использует это, поэтому, если вы хотите прочитать только один байт 1GB файла, вам придется загрузить весь GB.
Следовательно, это зависит от того, что вы храните, является ли s3fs допустимым вариантом. Если вы сохраняете, скажите, фотографии, где вы хотите написать весь файл или прочитать весь файл, никогда не изменяйте его пошаговое изменение, тогда его можно, хотя можно спросить, если вы это делаете, то почему бы просто не использовать S3 API напрямую?
Если вы говорите о данных об аппликациях (например, файлы базы данных, файлы журналов), где вы хотите сделать небольшое инкрементное изменение, тогда его определенная no-S3 Just не работает таким образом, вы не можете постепенно изменять файл.
В упомянутой выше статье говорится о аналогичном приложении - s3backer - которое затрагивает проблемы производительности, реализуя виртуальную файловую систему через S3. Это затрагивает проблемы производительности, но у него есть несколько собственных проблем:
- Высокий риск повреждения данных из-за задержки записи
- слишком малые размеры блоков (например, по умолчанию 4K) могут добавить значительные дополнительные затраты (например, $130 за 50 ГБ с объемом памяти 4 КБ)
- слишком большие размеры блоков могут значительно увеличить передачу и хранение данных сборов.
- Использование памяти может быть запретительным: по умолчанию он кэширует 1000 блоков.
С размером блока по умолчанию 4K, который не является проблемой, но большинство пользователей
вероятно, захочет увеличить размер блока.
Я прибегал к EBS Mounted Drived, совместно используемому экземпляром EC2. Но вы должны знать, что, хотя самый эффективный вариант имеет одну большую проблему У EBS Mounted NFS Share есть свои проблемы - единственная точка отказа; если аппарат, использующий общий объем EBS, отключается, вы теряете доступ ко всем машинам, которые обращаются к ресурсу.
Это риск, с которым я смог жить, и был вариантом, который я выбрал в конце. Надеюсь, это поможет.