Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Modalità di capacità di lettura/scrittura in Amazon Keyspaces
Amazon Keyspaces offre due modalità di capacità di lettura/scrittura per l'elaborazione di letture e scritture sulle tabelle:
-
Su richiesta (impostazione predefinita)
-
Assegnata
La modalità di capacità di lettura/scrittura scelta controlla il modo in cui ti viene addebitato il throughput di lettura e scrittura e come viene gestita la capacità di throughput delle tabelle.
Argomenti
Modalità di capacità on demand
La modalità di capacità on demand di Amazon Keyspaces (per Apache Cassandra) è un'opzione di fatturazione flessibile in grado di soddisfare migliaia di richieste al secondo senza pianificazione della capacità. Questa opzione offre pay-per-request prezzi per le richieste di lettura e scrittura in modo da pagare solo per ciò che usi.
Quando scegli la modalità on-demand, Amazon Keyspaces può scalare istantaneamente la capacità di throughput della tabella fino a qualsiasi livello di traffico raggiunto in precedenza, per poi ridurla quando il traffico delle applicazioni diminuisce. Se il livello di traffico di un carico di lavoro raggiunge un nuovo picco, il servizio si adatta rapidamente per aumentare la capacità di throughput della tabella. Puoi abilitare la modalità di capacità su richiesta sia per le tabelle nuove che per quelle esistenti.
La modalità su richiesta è una buona opzione se si verifica una delle seguenti condizioni:
-
Si creano nuove tabelle con carichi di lavoro non noti.
-
Si dispone di un traffico delle applicazioni non prevedibile.
-
Si preferisce la facilità di pagamento per l'utilizzo effettivo.
Per iniziare con la modalità on demand, puoi creare una nuova tabella o aggiornare una tabella esistente per utilizzare la modalità di capacità su richiesta utilizzando la console o con alcune righe di codice Cassandra Query Language (CQL). Per ulteriori informazioni, consulta Tabelle.
Argomenti
Unità di richiesta di lettura e unità di richiesta di scrittura
Con le tabelle in modalità di capacità on demand, non è necessario specificare in anticipo la velocità di lettura e scrittura che si prevede venga utilizzata dall'applicazione. Amazon Keyspaces ti addebita le spese di lettura e scrittura eseguite sulle tabelle in termini di unità di richiesta di lettura (RU) e unità di richiesta di scrittura (WRU).
-
Una RRU rappresenta una richiesta di
LOCAL_QUORUM
lettura o due richieste diLOCAL_ONE
lettura per una riga di dimensioni fino a 4 KB. Se è necessario leggere una riga di dimensioni superiori a 4 KB, l'operazione di lettura utilizza RRU aggiuntive. Il numero totale di RRU richieste dipende dalla dimensione della riga e dal fatto che si desideri utilizzareLOCAL_QUORUM
oLOCAL_ONE
leggere la coerenza. Ad esempio, la lettura di una riga da 8 KB richiede 2 RRU con coerenza diLOCAL_QUORUM
lettura e 1 RRU se si sceglieLOCAL_ONE
la coerenza di lettura. -
Una WRU rappresenta una scrittura per una riga di dimensioni fino a 1 KB. Tutte le scritture utilizzano
LOCAL_QUORUM
la coerenza e non sono previsti costi aggiuntivi per l'utilizzo di transazioni leggere (LWT). Se è necessario scrivere una riga più grande di 1 KB, l'operazione di scrittura utilizza WRU aggiuntive. Il numero totale di WRU richieste dipende dalla dimensione della riga. Ad esempio, se la dimensione della riga è di 2 KB, sono necessarie 2 WRU per eseguire una richiesta di scrittura.
Per informazioni sui livelli di coerenza supportati, vedereLivelli di coerenza di lettura e scrittura supportati da Apache Cassandra e costi associati.
Proprietà di dimensionamento e picco di traffico
Le tabelle Amazon Keyspaces che utilizzano la modalità di capacità su richiesta si adattano automaticamente al volume di traffico dell'applicazione. La modalità di capacità on demand adatta automaticamente fino al doppio del precedente picco di traffico su una tabella. Ad esempio, lo schema di traffico dell'applicazione potrebbe variare tra 5.000 e 10.000 LOCAL_QUORUM
letture al secondo, dove 10.000 letture al secondo era il picco di traffico precedente.
Con questo modello, la modalità di capacità su richiesta consente di gestire istantaneamente un traffico sostenuto fino a 20.000 letture al secondo. Se l'applicazione registra un traffico di 20.000 letture al secondo, tale picco diventa il nuovo picco precedente, che consente al traffico successivo di raggiungere fino a 40.000 letture al secondo.
Se hai bisogno di più del doppio del picco precedente su una tabella, Amazon Keyspaces alloca automaticamente più capacità all'aumentare del volume di traffico. Questo aiuta a garantire che la tabella abbia una capacità di throughput sufficiente per elaborare le richieste aggiuntive. Tuttavia, è possibile che si verifichino errori di capacità di throughput insufficiente se si supera il doppio del picco precedente entro 30 minuti.
Ad esempio, supponete che lo schema di traffico dell'applicazione vari tra 5.000 e 10.000 letture al secondo con elevata coerenza, dove 20.000 letture al secondo rappresentavano il picco di traffico raggiunto in precedenza. In questo caso, il servizio consiglia di distanziare la crescita del traffico su almeno 30 minuti prima di aumentare fino a 40.000 letture al secondo.
Per informazioni su come stimare il consumo di capacità di lettura e scrittura di una tabella, consulta. Come stimare il consumo di capacità della velocità effettiva di lettura e scrittura in Amazon Keyspaces
Per ulteriori informazioni sulle quote predefinite per il tuo account e su come aumentarle, consultaQuote per Amazon Keyspaces (per Apache Cassandra).
Velocità di trasmissione effettiva iniziale per la modalità di capacità on demand
Se crei una nuova tabella con la modalità di capacità su richiesta abilitata o passi una tabella esistente alla modalità di capacità su richiesta per la prima volta, la tabella presenta le seguenti impostazioni di picco precedenti, anche se in precedenza non serviva traffico utilizzando la modalità di capacità su richiesta:
-
Tabella appena creata con modalità di capacità su richiesta: il picco precedente era di 2.000 WRU e 6.000 RRU. Puoi guidare immediatamente fino al doppio del picco precedente. In questo modo, le tabelle on-demand appena create possono servire fino a 4.000 WRU e 12.000 RRU.
-
Tabella esistente passata alla modalità di capacità su richiesta: il picco precedente era la metà delle WCU e RCU precedenti fornite per la tabella o delle impostazioni per una tabella appena creata con modalità di capacità su richiesta, a seconda di quale sia la più alta.
Modalità di capacità di throughput fornita
Se si sceglie la modalità di capacità di throughput assegnata, si specifica il numero di letture e scritture al secondo necessarie per l'applicazione. Questo ti aiuta a gestire l'utilizzo di Amazon Keyspaces in modo da rimanere pari o inferiore a un tasso di richiesta definito per ottimizzare il prezzo e mantenere la prevedibilità. Per ulteriori informazioni sulla scalabilità automatica per il throughput assegnato, consulta. Gestisci automaticamente la capacità di throughput con la scalabilità automatica di Amazon Keyspaces
La modalità Provisioned Throughput Capacity è una buona opzione se si verifica una delle seguenti condizioni:
-
Si dispone di un traffico delle applicazioni prevedibile.
-
Si eseguono applicazioni il cui traffico è costante o aumenta gradualmente.
-
È possibile prevedere i requisiti di capacità per ottimizzare i prezzi.
Unità di capacità in lettura e unità di capacità in scrittura
Per le tabelle delle modalità di capacità di throughput assegnate, è necessario specificare la capacità di throughput in termini di unità di capacità di lettura (RCU) e unità di capacità di scrittura (WCU):
-
Una RCU rappresenta una
LOCAL_QUORUM
lettura al secondo, o dueLOCAL_ONE
letture al secondo, per una riga di dimensioni fino a 4 KB. Se è necessario leggere una riga di dimensioni superiori a 4 KB, l'operazione di lettura utilizza RCU aggiuntive.Il numero totale di RCU richiesti dipende dalla dimensione della riga e dal tipo di unità desiderata
LOCAL_QUORUM
oLOCAL_ONE
di lettura. Ad esempio, se la dimensione della riga è di 8 KB, sono necessarie 2 RCU per supportare unaLOCAL_QUORUM
lettura al secondo e 1 RCU se si sceglie la modalità di lettura.LOCAL_ONE
-
Una WCU rappresenta una scrittura al secondo per una riga di dimensioni fino a 1 KB. Tutte le scritture utilizzano
LOCAL_QUORUM
la coerenza e non sono previsti costi aggiuntivi per l'utilizzo di transazioni leggere (LWT). Se è necessario scrivere una riga più grande di 1 KB, l'operazione di scrittura utilizza WCU aggiuntive.Il numero totale di WCU richieste dipende dalla dimensione della riga. Ad esempio, se la dimensione della riga è di 2 KB, sono necessarie 2 WCU per supportare una richiesta di scrittura al secondo. Per ulteriori informazioni su come stimare il consumo di capacità di lettura e scrittura di una tabella, vedere. Come stimare il consumo di capacità della velocità effettiva di lettura e scrittura in Amazon Keyspaces
Se l'applicazione legge o scrive righe più grandi (fino alla dimensione massima delle righe di Amazon Keyspaces di 1 MB), consuma più unità di capacità. Per ulteriori informazioni su come stimare la dimensione delle righe, consulta. Calcolo della dimensione delle righe in Amazon Keyspaces Ad esempio, supponiamo di creare una tabella con provisioning con 6 RCU e 6 WCU. Con queste impostazioni, la tua applicazione può eseguire le seguenti operazioni:
-
Esegue
LOCAL_QUORUM
letture fino a 24 KB al secondo (4 KB × 6 RCU). -
Esegui
LOCAL_ONE
letture fino a 48 KB al secondo (il doppio della velocità di lettura). -
Scrivi fino a 6 KB al secondo (1 KB × 6 WCU).
Il throughput assegnato è la quantità massima di capacità di throughput che un'applicazione può consumare da una tabella. Se l'applicazione supera la capacità di throughput assegnata, è possibile che si verifichino errori di capacità insufficiente.
Ad esempio, una richiesta di lettura che non ha una capacità di throughput sufficiente ha esito negativo con un'Read_Timeout
eccezione e viene registrata nella metrica. ReadThrottleEvents
Una richiesta di scrittura che non ha una capacità di throughput sufficiente ha esito negativo con un'Write_Timeout
eccezione e viene registrata nella metrica. WriteThrottleEvents
Puoi utilizzare Amazon CloudWatch per monitorare le metriche di throughput fornite ed effettive e gli eventi di capacità insufficiente. Per ulteriori informazioni su questi parametri, consulta Metriche e dimensioni di Amazon Keyspaces.
Nota
Errori ripetuti dovuti a una capacità insufficiente possono portare a eccezioni specifiche dei driver lato client, ad esempio il DataStax driver Java non funziona con un. NoHostAvailableException
Per modificare le impostazioni della capacità di throughput per le tabelle, è possibile utilizzare l'istruzione AWS Management Console o l'ALTER TABLE
istruzione using CQL. Per ulteriori informazioni, vedere. ALTER TABLE
Per ulteriori informazioni sulle quote predefinite per il tuo account e su come aumentarle, consulta. Quote per Amazon Keyspaces (per Apache Cassandra)
Gestione e visualizzazione delle modalità di capacità
Puoi interrogare la tabella di sistema nello spazio delle chiavi di sistema Amazon Keyspaces per esaminare le informazioni sulla modalità di capacità relative a una tabella. Puoi anche verificare se una tabella utilizza la modalità di capacità di throughput su richiesta o fornita. Se la tabella è configurata con la modalità di capacità di throughput assegnata, è possibile visualizzare la capacità di throughput fornita per la tabella.
Esempio
SELECT * from system_schema_mcs.tables where keyspace_name = 'mykeyspace' and table_name = 'mytable';
Una tabella configurata con la modalità di capacità su richiesta restituisce quanto segue.
{ 'capacity_mode': { 'last_update_to_pay_per_request_timestamp': '1579551547603', 'throughput_mode': 'PAY_PER_REQUEST' } }
Una tabella configurata con la modalità di capacità di throughput assegnata restituisce quanto segue.
{ 'capacity_mode': { 'last_update_to_pay_per_request_timestamp': '1579048006000', 'read_capacity_units': '5000', 'throughput_mode': 'PROVISIONED', 'write_capacity_units': '6000' } }
Il last_update_to_pay_per_request_timestamp
valore viene misurato in millisecondi.
Per modificare la capacità di throughput assegnata per una tabella, utilizzare. ALTER TABLE
Considerazioni relative alla modifica delle modalità di capacità
Quando passi una tabella dalla modalità di capacità fornita alla modalità di capacità su richiesta, Amazon Keyspaces apporta diverse modifiche alla struttura della tabella e delle partizioni. Questo processo può richiedere alcuni minuti. Durante il periodo di passaggio, la tabella offre un throughput coerente con gli importi di WCU e RCU precedentemente forniti.
Quando si passa dalla modalità di capacità su richiesta alla modalità di capacità fornita, la tabella offre un throughput coerente con il picco precedente raggiunto quando la tabella era impostata sulla modalità di capacità su richiesta.
Nota
È possibile cambiare la modalità di capacità dalla modalità di approvvigionamento a quella su richiesta solo una volta nell'arco di 24 ore.