Saltearse al contenido

Azure Blob Storage

Abrir un namespace

import os
os.environ["AZURE_STORAGE_ACCOUNT_NAME"] = "myacct"
os.environ["AZURE_STORAGE_ACCESS_KEY"] = "..."
import namidb as tg
client = tg.Client("az://myacct/mycontainer?ns=prod")

Forma de la URI: az://<storage-account>/<container>[/<prefix>]?ns=<namespace>.

Managed Identity (AKS / VMSS / App Service)

Cuando NamiDB corre dentro de Azure, preferir Managed Identity sobre una access key de larga duración. El crate object_store de Rust toma la managed identity a través de la cadena estándar de credenciales — no hace falta config específica de NamiDB.

Azurite (emulador local)

Para desarrollo y CI:

Ventana de terminal
docker run -p 10000:10000 mcr.microsoft.com/azure-storage/azurite
client = tg.Client(
"az://devstoreaccount1/mycontainer?ns=test&use_emulator=true"
)

El flag use_emulator=true reescribe el endpoint a http://127.0.0.1:10000/devstoreaccount1.

Conditional writes

Azure Blob soporta If-Match en PutBlob, que object_store mapea al protocolo CAS de NamiDB. Los invariantes de single-writer-per-namespace + epoch-CAS aplican de forma idéntica.

Ver también