Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Implementazione del WLM automatico

Modalità Focus
Implementazione del WLM automatico - Amazon Redshift

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à.

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à.

Con la gestione automatica del carico di lavoro (WLM), Amazon Redshift gestisce la simultaneità delle query e l'allocazione della memoria. Vengono create fino a otto code con identificatori della classe di servizio da 100 a 107. Ogni coda ha una priorità. Per ulteriori informazioni, consulta Priorità delle query.

Il WLM automatico determina la quantità di risorse necessaria alle query e regola la simultaneità in base al carico di lavoro. Quando nel sistema sono presenti query che richiedono quantità elevate di risorse (ad esempio, hash join tra tabelle di grandi dimensioni), il livello di simultaneità è inferiore. Se vengono inviate query più piccole (come inserimenti, eliminazioni, scansioni o semplici aggregazioni), il livello di simultaneità è maggiore.

WLM automatico è distinto dall'accelerazione di query brevi (short query acceleration, SQA) e valuta le query in modo diverso. WLM automatico e SQA lavorano insieme per consentire il completamento di query leggere e di breve esecuzione anche in presenza di code lunghe e che fanno un uso intensivo delle risorse. Per ulteriori informazioni su SQA, consultare Accelerazione di query brevi.

Amazon Redshift abilita la WLM automatica tramite gruppi di parametri:

  • Se i cluster utilizzano il gruppo di parametri di default, Amazon Redshift abilita la WLM automatica.

  • Se i cluster utilizzano gruppi di parametri personalizzati, puoi configurarli per l'abilitazione di WLM automatico. Ti consigliamo di creare un gruppo di parametri distinto per la configurazione di WLM automatico.

Per configurare WLM, modifica il parametro wlm_json_configuration in un gruppo di parametri che può essere associato a uno o più cluster. Per ulteriori informazioni, consultare Modifica della configurazione WLM.

Definisci le code di query all'interno della configurazione WLM. Puoi aggiungere altre code di query alla configurazione WLM predefinita, fino a un totale di otto code dell'utente. Per ogni coda di query puoi configurare le seguenti opzioni:

  • Priorità

  • Modalità dimensionamento simultaneo

  • Gruppi di utenti

  • Gruppi di query

  • Regole di monitoraggio delle query

Priorità

Puoi definire l'importanza relativa delle query in un carico di lavoro impostando un valore di priorità. La priorità viene specificata per una coda e la ereditano tutte le query associate alla coda. Per ulteriori informazioni, consultare Priorità delle query.

Modalità dimensionamento simultaneo

Quando il dimensionamento simultaneo è abilitato, Amazon Redshift aggiunge automaticamente ulteriore capacità del cluster quando necessario per elaborare un aumento delle query di lettura r scrittura simultanee. Gli utenti visualizzano sempre i dati più recenti, indipendentemente dal fatto che le query vengano eseguite nel cluster principale o in un cluster di dimensionamento simultaneo.

È possibile gestire le query inviate al cluster di dimensionamento simultaneo configurando le code di gestione del carico di lavoro. Quando abiliti il dimensionamento simultaneo per una coda, le query idonee vengono inviate al cluster di dimensionamento simultaneo anziché attendere in coda. Per ulteriori informazioni, consulta Dimensionamento simultaneo.

Gruppi di utenti

Puoi assegnare un set di gruppi di utenti a una coda specificando il nome di ogni gruppo di utenti o utilizzando i caratteri jolly. Quando un membro di un gruppo utenti elencato esegue una query, quella query viene eseguita nella coda corrispondente. Non esiste un limite impostato per il numero di gruppi di utenti che possono essere assegnati a una coda. Per ulteriori informazioni, consulta Assegnazione delle query alle code in base ai gruppi di utenti.

Ruoli utente

Puoi assegnare un set di ruoli utente a una coda specificando il nome di ogni ruolo utente o utilizzando caratteri jolly. Quando un membro di un ruolo utente elencato esegue una query, tale query viene eseguita nella coda corrispondente. Non esiste alcun limite al numero di ruoli utente che possono essere assegnati a una coda. Per ulteriori informazioni, vedere Assegnazione delle query alle code in base ai ruoli degli utenti.

Gruppi di query

Puoi assegnare un set di gruppi di query a una coda specificando il nome di ogni gruppo di query o utilizzando i caratteri jolly. Un gruppo di query è semplicemente un'etichetta. In fase di runtime, puoi assegnare l'etichetta del gruppo di query a una serie di query. Qualsiasi query che viene assegnata a un gruppo di query elencato verrà eseguita nella coda corrispondente. Non esiste un limite definito per il numero di gruppi di query che possono essere assegnati a una coda. Per ulteriori informazioni, consulta Assegnazione di una query a un gruppo di utenti.

Caratteri jolly

Se i caratteri jolly sono abilitati nella configurazione della coda WLM, è possibile assegnare gruppi di utenti e gruppi di query a una coda individualmente o utilizzando i caratteri jolly nello stile shell Unix. La corrispondenza del modello fa distinzione tra maiuscole e minuscole.

Ad esempio, il carattere jolly “*” corrisponde a qualsiasi numero di caratteri. Pertanto, se aggiungi dba_* all'elenco dei gruppi di utenti di una coda, qualsiasi query eseguita dagli utenti che appartiene a un gruppo con un nome che inizia con dba_ verrà assegnata a quella coda. Alcuni esempi sono dba_admin o DBA_primary. Il carattere jolly “?” corrisponde a qualsiasi carattere singolo. Pertanto, se la coda include il gruppo di utenti dba?1, i gruppi di utenti denominati dba11 e dba21 corrisponderanno, ma non quelli chiamati dba12.

Per impostazione predefinita, i caratteri jolly non sono abilitati.

Regole di monitoraggio delle query

Le regole di monitoraggio delle query definiscono i limiti delle prestazioni basati sui parametri per le code WLM e specificano l'azione da intraprendere quando una query oltrepassa tali limiti. Ad esempio, per una coda dedicata alle query di breve durata, puoi creare una regola che annulla le query eseguite per più di 60 secondi. Per tracciare le query mal progettate, potresti avere un'altra regola che registra le query che contengono cicli annidati. Per ulteriori informazioni, consultare Regole di monitoraggio delle query WLM.

Controllo di WLM automatico

Per controllare se WLM automatico è abilitato, esegui la seguente query. Se la query restituisce almeno una riga, WLM automatico è abilitato.

select * from stv_wlm_service_class_config where service_class >= 100;

La seguente query mostra il numero di query che hanno sostato in ciascuna coda di query (classe di servizio). Mostra anche il tempo medio di esecuzione, il numero di query con tempo di attesa al 90° percentile e il tempo medio di attesa. Le query di WLM automatico utilizzano le classi di servizio da 100 a 107.

select final_state, service_class, count(*), avg(total_exec_time), percentile_cont(0.9) within group (order by total_queue_time), avg(total_queue_time) from stl_wlm_query where userid >= 100 group by 1,2 order by 2,1;

Per sapere quali query sono state eseguite e completate correttamente da WLM automatico, esegui la seguente query.

select a.queue_start_time, a.total_exec_time, label, trim(querytxt) from stl_wlm_query a, stl_query b where a.query = b.query and a.service_class >= 100 and a.final_state = 'Completed' order by b.query desc limit 5;
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.