Cloud Storage admite la transmisión de datos a un segmento sin necesidad de que los datos se guarden primero en un archivo. Esto resulta útil cuando quieres subir datos, pero no sabes el tamaño final al inicio de la subida, como cuando generas los datos de subida a partir de un proceso o cuando comprimes un objeto sobre la marcha.
Usar la validación de suma de comprobación al transmitir
Como solo se puede proporcionar una suma de comprobación en la solicitud inicial de una subida, a menudo no es viable usar la validación de la suma de comprobación de Cloud Storage al transmitir contenido. Te recomendamos que siempre uses la validación de suma de comprobación. Puedes hacerlo manualmente una vez que se haya completado la subida de streaming. Sin embargo, si validas los datos después de que se haya completado la transferencia, los datos dañados estarán accesibles durante el tiempo que se tarde en confirmar que están dañados y en eliminarlos.
Si necesitas validar la suma de comprobación antes de que se complete la subida y de que se pueda acceder a los datos, no debes usar una subida en streaming. Deberías usar otra opción de subida que realice la validación de la suma de comprobación antes de finalizar el objeto.
Roles obligatorios
Para obtener los permisos que necesitas para transmitir subidas, pide a tu administrador que te conceda uno de los siguientes roles:
En el caso de las subidas que incluyan un bloqueo de conservación de objetos, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Administrador de objetos de Storage (
roles/storage.objectAdmin) para el segmento.En el resto de los casos, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Usuario de objetos de Storage (
roles/storage.objectUser) para el segmento.
Estos roles predefinidos contienen los permisos necesarios para transmitir subidas a Cloud Storage. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
storage.objects.createstorage.objects.delete- Este permiso solo es necesario para las subidas que sobrescriben un objeto.
storage.objects.list- Este permiso solo es necesario para usar la CLI de Google Cloud para seguir las instrucciones de esta página.
storage.objects.setRetention- Este permiso solo es necesario para las subidas que incluyan un bloqueo de conservación de objetos.
También puedes obtener estos permisos con otros roles predefinidos o roles personalizados.
Para obtener información sobre cómo conceder roles en los segmentos, consulta Definir y gestionar políticas de gestión de identidades y accesos en segmentos.
Emitir una subida
En los siguientes ejemplos se muestra cómo realizar una subida en streaming desde un proceso a un objeto de Cloud Storage:
Consola
La consola Google Cloud no admite las subidas en streaming. Usa la CLI de gcloud en su lugar.
Línea de comandos
Transfiere los datos al comando
gcloud storage cpy usa un guion para la URL de origen:PROCESS_NAME | gcloud storage cp - gs://BUCKET_NAME/OBJECT_NAME
Donde:
PROCESS_NAMEes el nombre del proceso del que recoges datos. Por ejemplo,collect_measurements.BUCKET_NAMEes el nombre del contenedor que contiene el objeto. Por ejemplo,my_app_bucket.OBJECT_NAMEes el nombre del objeto que se crea a partir de los datos. Por ejemplo,data_measurements.
Bibliotecas de cliente
C++
Para obtener más información, consulta la documentación de referencia de la API C++ de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
C#
Para obtener más información, consulta la documentación de referencia de la API C# de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Go
Para obtener más información, consulta la documentación de referencia de la API Go de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Java
Para obtener más información, consulta la documentación de referencia de la API Java de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.
Node.js
Para obtener más información, consulta la documentación de referencia de la API Node.js de Cloud Storage.
Para autenticarte en Cloud Storage, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta el artículo Configurar la autenticación para bibliotecas de cliente.