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
Elencare le container images installate in un cluster di Kubernetes
Utilizzare politiche di resiliency con Azure Container App
Come migrare da una form non tipizzata a una form tipizzata in Angular
Migrate and Modernize your .NET Applications on Azure
Eseguire attività basate su eventi con Azure Container Jobs
Utilizzare database e servizi con gli add-on di Container App
Sfruttare lo streaming di una chiamata Http da Blazor
Utilizzare la session affinity con Azure Container Apps
Utilizzare un service principal per accedere a Azure Container Registry
Usare le collection expression per inizializzare una lista di oggetti in C#
Sfruttare al massimo i topic space di Event Grid MQTT
Utilizzare il trigger SQL con le Azure Function
I più letti di oggi
- C# 4
- Spaziatura tra i caratteri in Silverlight 5
- ecco tutte le novità pubblicate sui nostri siti questa settimana: https://aspit.co/wkly buon week-end!
- Segui in tempo reale il TechEd 2004
- da oggi è possibile fare login velocemente con LinkedIn e Google. a questi si aggiunge il supporto già attivo per Facebook, Twitter, Microsoft Account, Windows Hello e OpenID, per darvi sempre più possibilità di accedere semplicemente alla nostra community! #aspitalia
- Migrare una service connection a workload identity federation in Azure DevOps
- Evitare postback multipli in un UpdatePanel