Мои варианты использования:
- Я хотел бы сохранить несколько версий текстовых файлов в облачном хранилище и сохранить отметку времени
createdAt
, при которой создавалась каждая версия. - IЯ хотел бы иметь возможность получать список всех версий и
createdAt
раз, не открывая и не читая файлы. - Я также хотел бы создавать ночные резервные копии корзины со всеми версиями без изменений, идля каждого файла вести запись его оригинального
createdAt
времени.
Мои решения:
- У меня есть хранилище Cloud Storage с версионированиемвключен.Каждый раз, когда я сохраняю файл
test
, я получаю новый файл test#generation_number
. - . Я могу перечислить все версии и получить старую версию с
test#generation_number
- .все версии
test
в корзине, используя gsutil cp -A gs://my-original-bucket/test gs://my-backup-bucket
.
Проблема с пунктом # 3.#generation_number
каждой резервной версии изменяется на время создания версии каждого файла резервной копии, не время создания исходного файла.Я понимаю, что это работает как задумано, и порядок версий все еще не изменен.
Но где спрятать эти оригинальные значения createdAt
?Я попытался сохранить их в метаданных, и обнаружил, что метаданные, похоже, не версионированы, а скорее глобальны для файлового объекта в целом.
Каков наилучший способ достижения моего варианта использования?Есть ли способ сделать это напрямую с Google Cloud Storage?Или вместо этого я должен вести отдельную базу данных с этой информацией?