Eseguire una funzione di Azure quando viene creato un BLOB
Si supponga di essere un fotografo e di avere un sito Web in cui si pubblicano le immagini della giornata. A causa dei molti impegni non si dispone di una pianificazione di caricamento coerente, ma si desidera inviare una notifica ai fan quando si carica un'immagine. Si decide di creare una funzione di Azure per inviare automaticamente un tweet ogni volta che si carica un'immagine nel contenitore BLOB di Archiviazione di Azure.
In questa unità si apprenderà come creare un trigger BLOB e indicare a tale trigger di monitorare una posizione specifica nel contenitore BLOB di Archiviazione di Azure.
Che cos'è Archiviazione di Azure?
Archiviazione di Azure è la soluzione di archiviazione cloud di Microsoft che supporta tutti i tipi di dati, inclusi BLOB, code e NoSQL. L'obiettivo di Archiviazione di Azure è fornire un'archiviazione dei dati:
- Ad elevata disponibilità
- Protezione
- Scalabile
- Gestita
La priorità non andrà tuttavia ad Archiviazione di Azure. Verrà usato solo per creare BLOB che attiveranno l'esecuzione della funzione.
Cos'è Archiviazione BLOB di Azure?
Archiviazione BLOB di Azure è una soluzione di archiviazione oggetti progettata per archiviare grandi quantità di dati non strutturati.
Ad esempio, Archiviazione BLOB di Azure è ideale per eseguire operazioni quali:
- Archiviazione di file
- Gestione di file
- Streaming di audio e video
- Registrazione dei dati
Esistono tre tipi di BLOB: BLOB in blocchi, BLOB di accodamento e BLOB di pagine. I BLOB in blocchi sono i tipi più comuni. Consentono di archiviare in modo efficiente dati binari o testo. I BLOB di accodamento sono simili ai BLOB in blocchi, ma sono stati progettati più che altro per le operazioni di accodamento, quali la creazione di un file di log che viene continuamente aggiornato. Infine, i BLOB di pagine sono costituiti da pagine e sono progettati per operazioni frequenti di lettura e scrittura casuali.
Che cos'è un trigger del BLOB?
Un trigger BLOB è un trigger che esegue una funzione quando si carica o si aggiorna un file nell'archivio BLOB di Azure. Le funzioni controllano periodicamente un contenitore di archiviazione per verificare la presenza di modifiche, con conseguente latenza. Esistono modi per ridurre questa latenza durante l'attivazione nei contenitori BLOB.
Per creare un trigger del BLOB, creare un account di Archiviazione di Azure e fornire un percorso che verrà monitorato dal trigger.
Come creare un trigger del blob
Proprio come gli altri trigger visti finora, è possibile creare un trigger BLOB nel portale di Azure. All'interno della funzione di Azure, selezionare Trigger del BLOB dall'elenco dei tipi di trigger predefiniti. Immettere quindi la logica da eseguire quando viene creato o aggiornato un BLOB.
Un'impostazione importante da comprendere è Percorso. Il percorso indica al trigger del BLOB la posizione da monitorare per vedere se un BLOB viene caricato o aggiornato. Per impostazione predefinita, il valore di Percorso è:
samples-workitems/{name}
Se si scompone questo concetto in due parti, si ottengono samples-workitems e {name}. La prima parte, samples-workitems, rappresenta il contenitore BLOB monitorato dal trigger. La seconda parte, {name}, indica che tutti i tipi di file determinano la chiamata alla funzione da parte del trigger. La funzione viene richiamata perché non è presente alcun filtro. Ad esempio, si può fare in modo che il trigger richiami la funzione solo se viene aggiunto un file con estensione png usando una sintassi come la seguente:
samples-workitems/{name}.png
L'ultimo elemento significativo in merito a questo concetto è il testo name. name rappresenta un parametro nella funzione di Azure che riceve il nome del file aggiunto. Se ad esempio si carica un file denominato resume.txt, la funzione di Azure riceve il valore sotto forma di stringa tramite un parametro denominato name.
Un trigger BLOB richiama una funzione di Azure quando rileva attività in una posizione specifica nell'account BLOB di Archiviazione di Azure. Per impostare la posizione da monitorare, modificare il valore Percorso nel portale di Azure.