Blob storage: introduzione

Questo post è parte di una serie su windows azure. Ecco il link per lista di tutti i post precedenti.

Nel post precedente abbiamo introdotto il windows azure storage, nelle sue varie sfaccettature. Ora proviamo, anche con un po’ di codice, a capire come interagire con il blob storage, messo a disposizione da azure.

Prendiamo spunto da una slide del training kit di windows azure rilasciato ad ottobre, per capire come sono “organizzati” il blob storage e i suoi contenuti:

Ogni file (blob) è contenuto in un container, che è assimilabile, quindi, alla root nella quale verranno poi caricate effettivamente le risorse. La piattaforma (windows azure) utilizza il blobname come “partition key” per bilanciare i carichi automaticamente e in modo del tutto trasparente, in base alle richieste, e distribuire le risorse tra i vari server.

La creazione di un container può avvenire o tramite il management portal oppure tramite codice. Il setup “up-front” fatto tramite il management portal è molto utile in tutti quegli scenari in cui l’environment deve essere già configurato correttamente prima dell’uso.

In fase di setup è possibile, oltre al nome del container, definire anche il suo livello di visibilità, impostando uno dei valori consentiti: Private, Public blob o Public container

Per interagire, lato codice, con il windows azure storage abbiamo sostanzialmente due opzioni, sia per il blob, sia per table e queue:

  • la client library, disponibile per differenti piattaforme. Per i progetti .Net, utilizzando nuget basta installare il package corretto (WindowsAzure.Storage)

  • REST api

Lo snippet di codice più semplice, utilizzando la client library per .Net, per poter uploadare un file sul container appena creato è il seguente (e direi che il codice è abbastanza autoesplicativo):


Con poche semplici righe di codice, abbiamo caricato il nostro primo file sul blob storage di azure. Nei prossimi post cercheremo di andare un po’ più nel dettaglio…

Keep in Touch

Sono interessato a: