Azure Cosmos DB come archivio di valori chiave - Panoramica dei costi
SI APPLICA A: NoSQL
Azure Cosmos DB è un servizio di database multimodello distribuito a livello globale che consente di compilare con facilità applicazioni su larga scala e a disponibilità elevata. Per impostazione predefinita, Azure Cosmos DB indicizza automaticamente ed in modo efficiente tutti i dati inseriti. Ciò consente query SQL (e JavaScript) veloci e coerenti sui dati.
L'articolo descrive il costo di Azure Cosmos DB per semplici operazioni di lettura e scrittura, quando usato come archivio di chiavi/valori. Le operazioni di scrittura includono inserimenti, sostituzioni, eliminazioni e upsert di elementi di dati. Oltre a garantire un contratto di servizio con disponibilità del 99,999% per tutti gli account in più aree, Azure Cosmos DB offre una latenza di 10 ms garantita <per le letture e per le scritture (indicizzate), al 99° percentile.
Perché usare le unità richiesta (UR)
Le prestazioni di Azure Cosmos DB si basano sulla quantità di velocità effettiva con provisioning espressa in unità richiesta (UR/sec). Il provisioning è a una seconda granularità e viene acquistato in UR/sec (non da confondere con la fatturazione oraria). Le UR devono essere considerate come astrazione logica (una valuta) che semplifica il provisioning della velocità effettiva necessaria per l'applicazione. Gli utenti non devono pensare alla differenziazione tra velocità effettiva di lettura e scrittura. Il modello singolo di valuta delle UR crea efficienza per condividere la capacità di provisioning tra le letture e le scritture. Questo modello di capacità con provisioning consente al servizio di fornire una velocità effettiva prevedibile e coerente, una bassa latenza garantita e una disponibilità elevata. Infine, mentre il modello di UR viene usato per rappresentare la velocità effettiva, ogni UR con provisioning ha anche una quantità definita di risorse (ad esempio memoria, core/CPU e operazioni di I/O al secondo).
Come sistema di database distribuito a livello globale, Azure Cosmos DB è l'unico servizio di Azure che offre contratti di servizio completi che coprono latenza, velocità effettiva, coerenza e disponibilità elevata. La velocità effettiva di cui si effettua il provisioning viene applicata a ognuna delle aree associate all'account Azure Cosmos DB. Per le letture, Azure Cosmos DB offre più livelli di coerenza ben definiti tra cui scegliere.
La tabella seguente illustra il numero di UR necessarie per eseguire operazioni di lettura e scrittura in base a un elemento di dati di dimensioni 1 KB e 100 KB con indicizzazione automatica predefinita disattivata.
Dimensioni elemento | 1 Lettura | 1 Scrittura |
---|---|---|
1 KB | 1 UR | 5 UR |
100 kB | 10 UR | 50 UR |
Costo di letture e scritture
Se si effettua il provisioning di 1.000 UR/sec, si tratta di 3,6 milioni di UR/ora e costerà $ 0,08 per l'ora (negli Stati Uniti e in Europa). Per un elemento di dati di dimensioni di 1 KB, ciò significa che è possibile utilizzare 3,6 milioni di letture o 0,72 milioni di scritture (3,6 milioni di UR/5) usando la velocità effettiva con provisioning. Normalizzato in milioni di letture e scritture, il costo sarebbe di $ 0,022 /milioni di letture ($ 0,08 / 3,6) e $0,111/milione di scritture ($ 0,08 / 0,72). Il costo al milione diventa minimo come illustrato nella tabella seguente.
Dimensioni elemento | Costo di 1 milione di letture | Costo di 1 milione di scritture |
---|---|---|
1 KB | $0.022 | $0.111 |
100 kB | $0.222 | $1.111 |
La maggior parte dei servizi di archivi di oggetti o BLOB di base addebita 0,40 dollari per milione di transazioni di lettura e 5 dollari per milione transazioni di scrittura. Se usato in modo ottimale, Azure Cosmos DB può essere fino al 98% più economico di queste altre soluzioni (per le transazioni da 1 KB).
Passaggi successivi
- Usare il calcolatore ur per stimare la velocità effettiva per i carichi di lavoro.