¿Cuál es la mejor manera de descargar todos los archivos de Google Cloud Storage?
¿Cuál es la mejor manera de descargar todos los archivos de Google Cloud Storage?
Respuestas:
Eche un vistazo a la herramienta gsutil . Puede usar el comando cp con la opción -R
(recursiva) y -m
(multiproceso).
gsutil -m cp -R gs://<bucket_name> .
Y si quieres probarlo con un cubo público, prueba
gsutil -m cp -R gs://uspto-pair .
La aceleración otorgada por el subproceso múltiple puede ser bastante significativa:
$ time gsutil cp -R gs://uspto-pair/docs/2010-08-28 .
...
real 0m12.534s
vs
$ time gsutil -m cp -R gs://uspto-pair/docs/2010-08-28 .
...
real 0m3.345s
-m
marca para subprocesos múltiples. Esto reducirá significativamente el tiempo de respuesta del disco, ya que moverá continuamente las agujas entre los diferentes archivos. Intenté usarlo -m
al principio, solo para que el disco se convirtiera en el cuello de botella. Omitir la -m
bandera mantendrá la escritura del HDD en la misma ubicación física del disco.
Para aquellos que quieran evitar la instalación de herramientas locales como gsutil
, hay una forma de descargar archivos y carpetas de Google Cloud Storage por completo en el navegador:
mkdir Data
Data
carpeta temporal :gsutil -m cp -R gs://BUCKET_NAME/FOLDER_OR_FILE_PATH ./Data
zip -r Data.zip Data
dl Data.zip
, o: abra el menú desplegable "..." en la barra de herramientas, presione "Descargar archivo", escriba Data.zip
y presione "Descargar".Como alternativa a los pasos 6 y 7 (o si desea un archivo tar en lugar de un zip):
. . 6b. Presione el ícono de la computadora (o lápiz) en la barra de herramientas para abrir el explorador del entorno de Cloud Shell en una nueva pestaña.
. . 7b. Haga clic derecho en la Data
carpeta en el navegador de directorios a la izquierda y presione "Descargar". Se descargará un archivo tar en su máquina local, que luego podrá extraer usando 7-Zip o similar.
En caso de que gsutil
se produzca una excepción ( CommandException: Wrong number of arguments for "cp" command.
), intente lo siguiente:
gsutil -m cp -R gs://BUCKETNAME ./LOCALFOLDERNAME
En mi caso, lo que funcionó fue navegar al depósito en la interfaz gráfica de usuario del navegador y hacer clic izquierdo en el archivo y "Guardar archivo".
Obviamente, esto es terrible para varios archivos, pero, por supuesto, puede comprimirlos en un solo archivo (usando la consola en la nube de Google).
ver este hilo.
Además, si no tiene un depósito, puede crear uno y luego subirlo usando gcloud console, p. Ej.gsutil cp file.tgz gs://<bucket>
gsutil
en su máquina local: stackoverflow.com/a/59567734/2441655
Esto es lo que funcionó para mí:
Paso 1: instale gsutil en su máquina local: https://cloud.google.com/storage/docs/gsutil_install?hl=fr
Paso 2: copie archivos del depósito a su máquina local ejecutando el comando:gsutil cp [-r if repository] gs://[BUCKET_NAME]/[OBJECT_NAME] [OBJECT_DESTINATION_IN_LOCAL]