Храните большие файлы в Google Cloud Storage без локальной копии
Я хотел бы хранить большие двоичные файлы (файлы mongodump bson) в хранилище Google Cloud Storage, смонтированном на экземпляре Google Compute через gcsfuse. Все работает хорошо, за исключением того, что fuse копирует каждый файл во временную папку каждый раз, когда я пишу файл. Мой пример использования заключается в хранении файлов объемом до 4 ТБ в GCS, чтобы снизить наши затраты на хранение, но если мне нужно сохранить достаточно большой диск для временных файлов, GCS не уменьшает мои затраты, так как я должен хранить оба типа хранилища (диск и GCS).
Есть ли способ записи больших файлов в смонтированное ведро GCS без использования всего этого временного пространства в экземпляре GC?
1 ответ
Вот способ достижения того же результата, но без установки ковша GCS. Просто используйте возможность потоковой загрузки из gsutil для прямой передачи вывода из mongodump в корзину:
mongodump -d DBNAME -c COLLECTIONNAME --out - | gsutil cp - gs://cold-backups/daily/COLLECTIONNAME.bson
См. https://cloud.google.com/storage/docs/streaming для получения дополнительной информации.