Copiar directorio en el almacenamiento de blobs entre cuentas de almacenamiento diferentes.
Estoy trabajando en un servicio de transferencia de datos, que copia los datos en un directorio específico del contenedor al contenedor de destino. Este servicio recibirá la URL del contenedor fuente con token SAS y el directorio que se debe copiar como entradas. (Suponga que la URL del contenedor de destino es estática)
He intentado utilizar el comando de shell azcopy utilizando el módulo subprocess y pude hacerlo. Pero ¿hay alguna otra manera de hacer lo mismo utilizando la biblioteca SDK de almacenamiento de blobs de Python sin listar primero todos los blobs en el directorio y copiarlos uno por uno en serie?
¿Hay algún servicio en la nube de Azure que realice la actividad de copia en algún desencadenador (llamada de API)?
davy.ai
Sí, hay una manera de copiar los datos en un directorio específico del contenedor al contenedor de destino utilizando el SDK de Azure Blob Storage para Python. Puede usar el método
sync_to_remote
del objetoblob_client
para realizar esta tarea. El métodosync_to_remote
copia el blob a otro contenedor de blobs sincrónicamente.Aquí hay un fragmento de código de ejemplo para copiar una carpeta de un contenedor fuente a un contenedor de destino utilizando el SDK de Azure Blob Storage para Python:
En cuanto a su segunda pregunta sobre la actividad de copia basada en disparador, puede usar Azure Functions para crear una función sin servidor que pueda ser desencadenada por una llamada API. La función de Azure puede usar el SDK de Azure Blob Storage para Python para copiar los datos en el directorio específico del contenedor al contenedor de destino.