Azure DocumentDB è il database documentale che permette di memorizzare in formato JSON documenti, manipolarli e fare ricerche su di esso. Si tratta di un servizio completamente gestito e scalabile. Quando memorizziamo un documento ci sono alcuni campi speciali che accompagnano il documento stesso, come il _ts per indicare la data di ultima modifica del documento, id per identificare il documento e _etag per gestire i conflitti.
Recentemente è stato aggiunto un nuovo campo, di nome ttl, che ci permette di specificare per quanti secondi il documento è valido. Questo significa che il documento viene eliminato automaticamente decorso il tempo specificato dall'ultima modifica. Il vantaggio, rispetto ad un'esplicita operazione di DELETE, è che non viene coinvolto nessuna Resource Unit (RU) e non influenza le prestazioni del database. Il documento infatti, quando scade, viene marcato come scaduto, tolto dalle quota di utilizzo, ed eliminato nel momento più opportuno.
Per usufruire di questa funzionalità dobbiamo prima di tutto abilitarne il supporto a livello di collezione. Questo è possibile a livello di API o dal portale, come nella figura.
Possiamo impostare un TTL a livello di collezione, ed eventualmente sovrascriverlo ad ogni specifico documento, oppure abilitarne il supporto e impostare il TTL ad ogni documento, caricando un JSON come il seguente.
{ "id": "myid", "title": "titolo", "ttl": 3600 }
Questo campo è supportato sia a livello di collezione che a livello di documento anche nella libreria .NET.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Recuperare App Service cancellati su Azure
Creare alias per tipi generici e tuple in C#
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Aprire una finestra di dialogo per selezionare una directory in WPF e .NET 8
Utilizzare QuickGrid di Blazor con Entity Framework
Gestire gli accessi con Token su Azure Container Registry
Aggiornare a .NET 9 su Azure App Service
Miglioramenti nell'accessibilità con Angular CDK
Path addizionali per gli asset in ASP.NET Core MVC
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Autenticarsi in modo sicuro su Azure tramite GitHub Actions