Azure Cosmos DB è il database distribuito della piattaforma cloud di Microsoft dalle eccellenti caratteristiche. Garantisce ottime prestazioni, scalabilità orizzontale, geo distribuzione e accesso con varie tipologie di API di tipologia NoSQL e OSS. Possiamo memorizzare documenti JSON, grafi o tabelle non relazionali.
Tutto questo però ha un costo non indifferente, soprattutto se vogliamo cominciamo ad apprezzare le caratteristiche di questo servizio, per poi crescere con le esigenze. Il pricing si basa sullo spazio utilizzato, ma soprattutto con il provisioned throughput che garantisce un numero esatto di lettura e scritture al secondo, proporzionato all'entità dell'oggetto che scriviamo. Il minimo da riservare è di 400 RU/s, cioè un costo di circa 24¤ mensili.
Questo throughput fino a poco fa andava allocato per container, cioè per collection nel caso di API MongoDB o SQL, graph, nel caso di Gremlin, o table, nel caso di Cassandra o Azure Table. Questo pricing non si sposa bene se sfruttiamo diversi container per tipologie di documenti o righe diverse, costringendoci in alcuni casi a sfruttare il salvataggio in un unico container.
Fortunatamente di recente è stata inserita la possibilità di condividere il throughput a livello di database così da poter utilizzare tutti i container che vogliamo. Per farlo è sufficiente, in fase di creazione del database, spuntare la voce Provision database throughput, e indicare il RU/s desiderato.

Durante la creazione del database possiamo creare direttamente anche un container e indicare se vogliamo utilizzare il throughput o usarne uno specifico. Applicare la spunta indicata in precedenza, infatti, non vuol che non possiamo creare una situazione ibrida in cui alcuni container hanno un throughput dedicato.
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
Migliorare la scalabilità delle Azure Function con il Flex Consumption
Utilizzare l nesting nativo dei CSS
Creare una libreria CSS universale: i bottoni
Potenziare la ricerca su Cosmos DB con Full Text Search
Gestire i dati con Azure Cosmos DB Data Explorer
Gestione dell'annidamento delle regole dei layer in CSS
Configurare il nome della run di un workflow di GitHub in base al contesto di esecuzione
Bloccare l'esecuzione di un pod in mancanza di un'artifact attestation di GitHub
Usare i servizi di Azure OpenAI e ChatGPT in ASP.NET Core con Semantic Kernel
Utilizzare Locust con Azure Load Testing
Creare agenti facilmente con Azure AI Agent Service