Livelli di servizio basati su DTUDTU-based service tiers

I livelli di servizio basati su DTU si differenziano in base a diverse dimensioni di calcolo con una quantità fissa di risorse di archiviazione, un periodo di conservazione fisso per i backup e un prezzo fisso.DTU-based service tiers are differentiated by a range of compute sizes with a fixed amount of included storage, fixed retention period for backups, and fixed price. Tutti i livelli di servizio assicurano la flessibilità necessaria per modificare le dimensioni di calcolo senza tempi di inattività.All service tiers provide flexibility of changing compute sizes without downtime. La fatturazione per i database singoli e i pool elastici viene effettuata con frequenza oraria in base al livello di servizio e alla dimensione di calcolo.Single databases and elastic pools are billed hourly based on service tier and compute size.

Importante

Istanza gestita di database SQL, attualmente in anteprima pubblica, non supporta un modello di acquisto basato su DTU.SQL Database Managed Instance, currently in public preview does not support a DTU-based purchasing model. Per altre informazioni, vedere l'articolo relativo a Istanza gestita di database SQL di Azure.For more information, see Azure SQL Database Managed Instance.

Nota

Per informazioni sui livelli di servizio basati su vCore, vedere Livelli di servizio basati su vCore.For information about vCore-based service tiers, see vCore-based service tiers. Per informazioni sulle differenze tra i livelli di servizio basati su DTU e quelli basati su vCore, vedere Modelli di acquisto del database SQL di Azure.For information about differentiating DTU-based service tiers and vCore-based service tiers, see Azure SQL Database purchasing models.

Confronto tra i livelli di servizio basati su DTUCompare the DTU-based service tiers

La scelta di un livello di servizio dipende soprattutto dai requisiti in termini di continuità aziendale, archiviazione e prestazioni.Choosing a service tier depends primarily on business continuity, storage, and performance requirements.

BasicBasic StandardStandard PremiumPremium
Carico di lavoro di destinazioneTarget workload Sviluppo e produzioneDevelopment and production Sviluppo e produzioneDevelopment and production Sviluppo e produzioneDevelopment and production
Contratto di servizio relativo al tempo di attivitàUptime SLA 99,99%99.99% 99,99%99.99% 99,99%99.99%
Conservazione backupBackup retention 7 giorni7 days 35 giorni35 days 35 giorni35 days
CPUCPU BassoLow Basso, medio, elevatoLow, Medium, High Medio, elevatoMedium, High
Velocità effettiva di I/O (approssimativa)IO throughput (approximate) 2,5 IOPS per DTU2.5 IOPS per DTU 2,5 IOPS per DTU2.5 IOPS per DTU 48 IOPS per DTU48 IOPS per DTU
Latenza di I/O (approssimativa)IO latency (approximate) 5 ms (lettura), 10 ms (scrittura)5 ms (read), 10 ms (write) 5 ms (lettura), 10 ms (scrittura)5 ms (read), 10 ms (write) 2 ms (lettura/scrittura)2 ms (read/write)
Indicizzazione ColumnStoreColumnstore indexing N/DN/A S3 e superioreS3 and above SupportatoSupported
OLTP in memoriaIn-memory OLTP N/DN/A N/DN/A SupportatoSupported

Nota

È possibile ottenere un database SQL di Azure al livello di servizio Basic con un account Azure gratuito per provare a usare Azure.You can get a free Azure SQL database at the Basic service tier in conjunction with a Azure free account to explore Azure. Per informazioni, vedere Crea un database cloud gestito con il tuo account Azure gratuito.For information, see Create a managed cloud database with your Azure free account.

DTU database singolo e limiti di archiviazioneSingle database DTU and storage limits

Le dimensioni di calcolo per i database singoli sono espresse in unità di transazione di database (DTU), quelle per i pool elastici sono espresse in unità di transazione di database elastico (eDTU).Compute sizes are expressed in terms of Database Transaction Units (DTUs) for single databases and elastic Database Transaction Units (eDTUs) for elastic pools. Per altre informazioni su DTU ed EDTU, vedere Modelli di acquisto basati su DTU.For more on DTUs and eDTUs, see DTU-based purchasing model?

BasicBasic StandardStandard PremiumPremium
Dimensioni massime di archiviazioneMaximum storage size 2 GB2 GB 1 TB1 TB 4 TB4 TB
DTU massimeMaximum DTUs 55 30003000 40004000

Importante

In alcune circostanze, può essere necessario compattare un database per recuperare spazio inutilizzato.Under some circumstances, you may need to shrink a database to reclaim unused space. Per altre informazioni, vedere Gestire lo spazio file nel database SQL di Azure.For more information, see Manage file space in Azure SQL Database.

eDTU pool elastico, archiviazione e limiti del database in poolElastic pool eDTU, storage, and pooled database limits

BasicBasic StandardStandard PremiumPremium
Dimensioni massime di archiviazione per ogni databaseMaximum storage size per database 2 GB2 GB 1 TB1 TB 1 TB1 TB
Dimensioni massime di archiviazione per ogni poolMaximum storage size per pool 156 GB156 GB 4 TB4 TB 4 TB4 TB
Numero massimo di eDTU per ogni databaseMaximum eDTUs per database 55 30003000 40004000
Numero massimo di eDTU per ogni poolMaximum eDTUs per pool 16001600 30003000 40004000
Numero massimo di database per poolMaximum number of databases per pool 500500 500500 100100

Importante

Nel livello Premium è attualmente disponibile più di 1 TB di archiviazione in tutte le aree tranne le seguenti: Stati Uniti centro-occidentali, Cina orientale, USDoDCentral, Germania centrale, USDoDEast, US Gov Southwest, USGov Iowa, Germania nord-orientale, Cina settentrionale.More than 1 TB of storage in the Premium tier is currently available in all regions except the following: West Central US, China East, USDoDCentral, Germany Central, USDoDEast, US Gov Southwest, USGov Iowa, Germany Northeast, China North. Nelle altre aree la quantità massima di risorse di archiviazione nel livello Premium è limitata a 1 TB.In other regions, the storage max in the Premium tier is limited to 1 TB. Vedere Limitazioni correnti per P11-P15.See P11-P15 Current Limitations.

Importante

In alcune circostanze, può essere necessario compattare un database per recuperare spazio inutilizzato.Under some circumstances, you may need to shrink a database to reclaim unused space. Per altre informazioni, vedere Gestire lo spazio file nel database SQL di Azure.For more information, see Manage file space in Azure SQL Database.

Benchmark DTUDTU Benchmark

Caratteristiche fisiche (CPU, memoria, IO) associate a ogni misura DTU vengono calibrate usando un benchmark che simula il carico di lavoro di database reali.Physical characteristics (CPU, memory, IO) associated to each DTU measure are calibrated using a benchmark that simulates real-world database workload.

Correlazione tra i risultati e le prestazioni del database nel mondo realeCorrelating benchmark results to real world database performance

È importante comprendere che tutti i benchmark, ha una funzione esclusivamente rappresentativa e indicativa.It is important to understand that all benchmarks are representative and indicative only. Le frequenze di transazioni raggiunte con l'applicazione benchmark non saranno uguali a quelle che è possibile ottenere con altre applicazioni.The transaction rates achieved with the benchmark application will not be the same as those that might be achieved with other applications. Il benchmark include una raccolta di diversi tipi di transazioni eseguiti a fronte di uno schema contenente una gamma di tabelle e tipi di dati.The benchmark comprises a collection of different transaction types run against a schema containing a range of tables and data types. Anche se il benchmark esegue le stesse operazioni di base comuni a tutti i carichi di lavoro OLTP, non rappresenta una specifica classe di database o applicazione.While the benchmark exercises the same basic operations that are common to all OLTP workloads, it does not represent any specific class of database or application. L'obiettivo del benchmark è fornire un'indicazione ragionevole delle prestazioni relative di un database previste in caso di riduzione o aumento delle dimensioni di calcolo.The goal of the benchmark is to provide a reasonable guide to the relative performance of a database that might be expected when scaling up or down between compute sizes. Nella realtà i database hanno dimensioni e complessità diverse, gestiscono combinazioni diverse di carichi di lavoro e rispondono in modi diversi.In reality, databases are of different sizes and complexity, encounter different mixes of workloads, and will respond in different ways. Ad esempio, un'applicazione con un utilizzo elevato di I/O può raggiungere le soglie di I/O prima, così come un'applicazione con un utilizzo elevato di CPU può raggiungere i limiti di CPU in tempi più brevi.For example, an IO-intensive application may hit IO thresholds sooner, or a CPU-intensive application may hit CPU limits sooner. Non vi sono garanzie che la scalabilità di un determinato database corrisponda a quella del benchmark in caso di aumento del carico.There is no guarantee that any particular database will scale in the same way as the benchmark under increasing load.

Il benchmark e la relativa metodologia sono descritti con maggiori dettagli più avanti.The benchmark and its methodology are described in more detail below.

Riepilogo del benchmarkBenchmark summary

Il benchmark ASDB misura le prestazioni di una combinazione di operazioni di database di base che si verificano con maggiore frequenza in carichi di lavoro di elaborazione di transazioni online (OLTP).ASDB measures the performance of a mix of basic database operations that occur most frequently in online transaction processing (OLTP) workloads. Benché il benchmark sia stato progettato tenendo conto del cloud computing, lo schema del database, il popolamento di dati e le transazioni sono stati progettati in modo da rappresentare a grandi linee gli elementi di base usati con maggiore frequenza con carichi di lavoro OLTP.Although the benchmark is designed with cloud computing in mind, the database schema, data population, and transactions have been designed to be broadly representative of the basic elements most commonly used in OLTP workloads.

SCHEMASchema

Lo schema è progettato in modo da prevedere una varietà e una complessità sufficienti per supportare una vasta gamma di operazioni.The schema is designed to have enough variety and complexity to support a broad range of operations. Il benchmark viene eseguito a fronte di un database costituito da sei tabelle.The benchmark runs against a database comprised of six tables. Le tabelle rientrano in tre categorie, ovvero a dimensione fissa, ridimensionabili ed espandibili.The tables fall into three categories: fixed-size, scaling, and growing. Sono presenti due tabelle a dimensione fissa, tre tabelle ridimensionabili e una tabella espandibile.There are two fixed-size tables; three scaling tables; and one growing table. Le tabelle a dimensione fissa includono un numero costante di righe.Fixed-size tables have a constant number of rows. Le tabelle ridimensionabili prevedono una cardinalità proporzionale alle prestazioni del database che però non cambia durante l'esecuzione del benchmark.Scaling tables have a cardinality that is proportional to database performance, but doesn’t change during the benchmark. La tabella espandibile ha le dimensioni di una tabella ridimensionabile con carico iniziale, ma successivamente la cardinalità cambia nel corso dell'esecuzione del benchmark con l'inserimento e l'eliminazione di righe.The growing table is sized like a scaling table on initial load, but then the cardinality changes in the course of running the benchmark as rows are inserted and deleted.

Lo schema include una combinazione di tipi di dati, tra cui valori integer, valori numerici, caratteri e valori di data/ora.The schema includes a mix of data types, including integer, numeric, character, and date/time. Sono incluse chiavi primarie e secondarie, ma non chiavi esterne e non esistono pertanto vincoli di integrità referenziale tra le tabelle.The schema includes primary and secondary keys, but not any foreign keys - that is, there are no referential integrity constraints between tables.

Un programma di generazione di dati genera i dati per il database iniziale.A data generation program generates the data for the initial database. I dati integer e numeric vengono generati con diverse strategie.Integer and numeric data is generated with various strategies. In alcuni casi, i valori vengono distribuiti in modo casuale su un intervallo.In some cases, values are distributed randomly over a range. In altri casi, un insieme di valori viene permutato in modo casuale per garantire che venga mantenuta una distribuzione specifica.In other cases, a set of values is randomly permuted to ensure that a specific distribution is maintained. I campi di testo vengono generati da un elenco ponderato di parole per produrre dati realistici.Text fields are generated from a weighted list of words to produce realistic looking data.

Le dimensioni del database si basano su un "fattore di scala"The database is sized based on a “scale factor.” (SF), che determina la cardinalità delle tabelle ridimensionabili ed espandibili.The scale factor (abbreviated as SF) determines the cardinality of the scaling and growing tables. Come descritto più avanti nella sezione Utenti e velocità, la dimensione del database, il numero di utenti e le prestazioni massime vengono tutti adattati in proporzione.As described below in the section Users and Pacing, the database size, number of users, and maximum performance all scale in proportion to each other.

TransazioniTransactions

Il carico di lavoro è costituito da nove tipi di transazioni, come illustrato nella tabella riportata di seguito.The workload consists of nine transaction types, as shown in the table below. Ogni transazione è progettata per evidenziare un insieme specifico di caratteristiche di sistema nel motore di database e nell'hardware del sistema, con un contrasto elevato rispetto alle altre transazioni.Each transaction is designed to highlight a particular set of system characteristics in the database engine and system hardware, with high contrast from the other transactions. Questo approccio consente di valutare l'impatto dei diversi componenti sulle prestazioni globali.This approach makes it easier to assess the impact of different components to overall performance. La transazione "Operazioni lettura intense" ad esempio produce un numero significativo di operazioni di lettura dal disco.For example, the transaction “Read Heavy” produces a significant number of read operations from disk.

Tipo di transazioneTransaction Type DESCRIZIONEDescription
Operazioni lettura leggereRead Lite SELECT, in memoria, sola letturaSELECT; in-memory; read-only
Operazioni lettura medieRead Medium SELECT, principalmente in memoria, sola letturaSELECT; mostly in-memory; read-only
Operazioni lettura intenseRead Heavy SELECT, principalmente non in memoria, sola letturaSELECT; mostly not in-memory; read-only
Operazioni aggiornamento leggereUpdate Lite UPDATE, in memoria, lettura/scritturaUPDATE; in-memory; read-write
Operazioni aggiornamento intenseUpdate Heavy UPDATE, principalmente non in memoria, lettura/scritturaUPDATE; mostly not in-memory; read-write
Operazioni inserimento leggereInsert Lite INSERT, in memoria, lettura/scritturaINSERT; in-memory; read-write
Operazioni inserimento intenseInsert Heavy INSERT, principalmente non in memoria, lettura/scritturaINSERT; mostly not in-memory; read-write
DeleteDelete DELETE, combinazione in memoria e non in memoria, lettura/scritturaDELETE; mix of in-memory and not in-memory; read-write
Operazioni CPU intenseCPU Heavy SELECT, in memoria, carico CPU relativamente pesante, sola letturaSELECT; in-memory; relatively heavy CPU load; read-only

Combinazione di carichi di lavoroWorkload mix

Le transazioni vengono selezionate casualmente da una distribuzione ponderata con la seguente combinazione globale.Transactions are selected at random from a weighted distribution with the following overall mix. La combinazione globale presenta un rapporto di lettura/scrittura di circa 2:1.The overall mix has a read/write ratio of approximately 2:1.

Tipo di transazioneTransaction Type % di combinazione% of Mix
Operazioni lettura leggereRead Lite 3535
Operazioni lettura medieRead Medium 2020
Operazioni lettura intenseRead Heavy 55
Operazioni aggiornamento leggereUpdate Lite 2020
Operazioni aggiornamento intenseUpdate Heavy 33
Operazioni inserimento leggereInsert Lite 33
Operazioni inserimento intenseInsert Heavy 22
DeleteDelete 22
Operazioni CPU intenseCPU Heavy 1010

Utenti e velocitàUsers and pacing

Il carico di lavoro del benchmark si basa su uno strumento che invia transazioni attraverso un insieme di connessioni per simulare il comportamento di numerosi utenti simultanei.The benchmark workload is driven from a tool that submits transactions across a set of connections to simulate the behavior of a number of concurrent users. Benché tutte le connessioni e transazioni siano generate da un computer, per semplicità vengono indicate come "utenti".Although all of the connections and transactions are machine generated, for simplicity we refer to these connections as “users.” Sebbene ogni utente agisca in modo indipendente da tutti gli altri, tutti gli utenti eseguono lo stesso ciclo di passaggi illustrato di seguito:Although each user operates independently of all other users, all users perform the same cycle of steps shown below:

  1. Stabilire una connessione di database.Establish a database connection.
  2. Ripetere le seguenti operazioni fino al segnale di uscita:Repeat until signaled to exit:
    • Selezionare una transazione in modo casuale (da una distribuzione ponderata).Select a transaction at random (from a weighted distribution).
    • Eseguire la transazione selezionata e misurare il tempo di risposta.Perform the selected transaction and measure the response time.
    • Attendere un ritardo velocità.Wait for a pacing delay.
  3. Chiudere la connessione di database.Close the database connection.
  4. Uscire.Exit.

Il ritardo velocità (passaggio 2c) viene selezionato in modo casuale, ma con una distribuzione che presenta una media di 1,0 secondi.The pacing delay (in step 2c) is selected at random, but with a distribution that has an average of 1.0 second. Pertanto, ogni utente in media può generare al massimo una transazione al secondo.Thus each user can, on average, generate at most one transaction per second.

Regole di ridimensionamentoScaling rules

Il numero di utenti è determinato dalle dimensioni del database (in unità di fattore di conversione).The number of users is determined by the database size (in scale-factor units). Esiste un utente per ogni unità di fattore di scala.There is one user for every five scale-factor units. A causa del ritardo velocità, un utente in media può generare al massimo una transazione al secondo.Because of the pacing delay, one user can generate at most one transaction per second, on average.

Ad esempio, un database con fattore di scala pari a 500 (SF=500) avrà 100 utenti e potrà raggiungere una frequenza massima di 100 TPS.For example, a scale-factor of 500 (SF=500) database will have 100 users and can achieve a maximum rate of 100 TPS. Per ottenere un valore TPS più elevato, sono necessari più utenti e un database di dimensioni maggiori.To drive a higher TPS rate requires more users and a larger database.

Durata della misurazioneMeasurement duration

Per l'esecuzione di un benchmark valido è necessaria una durata della misurazione in condizioni stabili di almeno un'ora.A valid benchmark run requires a steady-state measurement duration of at least one hour.

MetricheMetrics

La metrica di base del benchmark è rappresentata dalla velocità effettiva e dal tempo di risposta.The key metrics in the benchmark are throughput and response time.

  • La velocità effettiva è l'unità di misura di base delle prestazioni nel benchmark.Throughput is the essential performance measure in the benchmark. Viene misurata in transazioni per unità di tempo, conteggiando tutti i tipi di transazioni.Throughput is reported in transactions per unit-of-time, counting all transaction types.
  • Il tempo di risposta consente di misurare la prevedibilità delle prestazioni.Response time is a measure of performance predictability. Il vincolo del tempo di risposta varia in base alla classe di servizio. I servizi di classe superiore prevedono requisiti di tempi di risposta più rigorosi, come illustrato di seguito.The response time constraint varies with class of service, with higher classes of service having a more stringent response time requirement, as shown below.
Classe di servizioClass of Service Misura della velocità effettivaThroughput Measure Requisito di tempi di rispostaResponse Time Requirement
PremiumPremium Transazioni al secondoTransactions per second 95° percentile a 0,5 secondi95th percentile at 0.5 seconds
StandardStandard Transazioni al minutoTransactions per minute 90° percentile a 1,0 secondi90th percentile at 1.0 seconds
BasicBasic Transazioni all'oraTransactions per hour 80° percentile a 2,0 secondi80th percentile at 2.0 seconds

Passaggi successiviNext steps