1 votos

¿La versión del objeto en la nube ignora los objetos sin cambios?

Tengo un servicio que genera grandes conjuntos de datos, donde sólo unos pocos de los archivos que realmente cambio y el resto permanecen sin cambios (pero todavía están en la carpeta de datos). Tenemos que mantener cada versión de los conjuntos de datos, pero me gustaría utilizar control de versiones de objetos para reducir los costos de mi nube de almacenamiento. Si puedo subir un nuevo conjunto de datos con un montón de viejos archivos y sólo un par de los nuevos, el cubo sólo generar nuevas versiones de los objetos que han cambiado? Habrá el mismo conjunto de archivos en la carpeta, con algunos que tienen varias versiones?

0voto

Michael - sqlbot Puntos 2233

Habilitar el control de Versiones de Objetos para un cubo. Una vez habilitado, Almacenamiento en la Nube crea una versión archivada de un objeto cada vez que la versión en vivo del objeto se sobrescriben o se elimina.

https://cloud.google.com/storage/docs/object-versioning

Aunque podría decirse que no decirlo explícitamente, cada vez que la versión en vivo del objeto se sobrescribe incluye el caso cuando se sobrescribe un objeto con exactamente la misma carga.

Para evitar esto, usted necesita para cargar los objetos con una utilidad que evita sobrescribir los archivos sin modificar. gsutil rsync aparece para hacer esto, pero para leer la documentación y observar su comportamiento, porque si bien se puede sincronizar con las marcas de tiempo o sumas de comprobación, parece preferir las marcas de tiempo, por lo que no puede hacer lo correcto, si los archivos locales son idénticos, pero parecen nuevos.

0voto

MLu Puntos 439

Cada vez que subas un archivo S3 crea una nueva versión. Incluso si el archivo tiene el mismo contenido.

Para evitar que usted tendrá que:

  1. Generar su nuevo conjunto de datos de forma local.
  2. Lista de todos los archivos de la S3 - que le dará el Tamaño y ETag que pasa a ser el archivo de la suma md5.
  3. Comparar los archivos locales con la lista de cubo - si el Tamaño de la diferencia o de la recibida de ETag difiere de la calculada la suma md5 es claramente diferente de archivo -> cargar.

Alternativamente, utilizar herramientas como aws s3 sync o s3cmd sync que hacer exactamente eso desde la línea de comandos o scripts de shell.

Espero que ayude :)

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: