Храните большие файлы в 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 для получения дополнительной информации.

Другие вопросы по тегам