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à.
Tabelle e comandi di sistema in Aurora DSQL
Consultare le sezioni seguenti per informazioni sulle tabelle e i cataloghi di sistema supportati in Aurora DSQL.
Tabelle di sistema
Aurora DSQL è compatibile con PostgreSQL, quindi molte tabelle
Tabelle e viste importanti del catalogo di PostgreSQL
La tabella seguente descrive le tabelle e le viste più comuni che è possibile utilizzare in Aurora DSQL.
| Nome | Description |
|---|---|
|
|
Informazioni su tutti gli schemi |
|
|
Informazioni su tutte le tabelle |
|
|
Informazioni su tutti gli attributi |
|
|
Informazioni sulle viste (pre)definite |
|
|
Descrive tutte le tabelle, le colonne, gli indici e gli oggetti simili |
|
|
Una vista sulle statistiche del planner |
|
|
Informazioni sugli utenti |
|
|
Informazioni su utenti e gruppi |
|
|
Elenca tutti gli indici |
|
|
Elenca i vincoli sulle tabelle |
Tabelle di catalogo supportate e non supportate
La tabella seguente indica quali tabelle sono supportate e non supportate in Aurora DSQL.
| Nome | Applicabile ad Aurora DSQL |
|---|---|
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
Sì |
|
|
Sì |
|
|
No (utilizzare |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
No |
|
|
No |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
Sì |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
Sì |
|
|
Sì |
|
|
No |
|
|
Sì |
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
Sì |
|
|
Sì |
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
No |
Viste di sistema supportate e non supportate
La tabella seguente indica quali viste sono supportate e non supportate in Aurora DSQL.
| Nome | Applicabile ad Aurora DSQL |
|---|---|
|
|
No |
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
No |
|
|
No |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
Sì |
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
Sì |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
|
|
No |
Le viste sys.jobs e sys.iam_pg_role_mappings
Aurora DSQL supporta le seguenti viste di sistema:
sys.jobs-
sys.jobsfornisce informazioni sullo stato delle attività asincrone. Ad esempio, dopo aver creato un indice asincrono, Aurora DSQL restituisce unjob_uuid. È possibile utilizzare talejob_uuidconsys.jobsper cercare lo stato dell’attività.SELECT * FROM sys.jobs WHERE job_id = 'example_job_uuid'; job_id | status | details ------------------+------------+--------- example_job_uuid | processing | (1 row) sys.iam_pg_role_mappings-
La vista
sys.iam_pg_role_mappingsfornisce informazioni sulle autorizzazioni concesse agli utenti IAM. Ad esempio, seDQSLDBConnectè un ruolo IAM che fornisce ad Aurora DSQL l’accesso ai non amministratori e a un utente denominatotestuservengono concessi il ruoloDQSLDBConnecte le autorizzazioni corrispondenti, è possibile interrogare la vistasys.iam_pg_role_mappingsper vedere a quali utenti sono concesse quali autorizzazioni.SELECT * FROM sys.iam_pg_role_mappings;
Domande utili sui metadati di sistema
Utilizza queste query per ottenere statistiche e metadati delle tabelle senza eseguire operazioni costose come la scansione completa della tabella.
Ottieni il numero stimato di righe per una tabella
Per ottenere il conteggio approssimativo delle righe in una tabella senza eseguire una scansione completa della tabella, utilizzate la seguente query:
SELECT reltuples FROM pg_class WHERE relname = 'table_name';
Il comando restituisce un output simile al seguente:
reltuples -------------- 9.993836e+08
Questo approccio è più efficiente rispetto alle tabelle SELECT COUNT(*) di grandi dimensioni in Aurora DSQL.
Il comando ANALYZE.
Il comando ANALYZE raccoglie statistiche sul contenuto delle tabelle nel database e archivia i risultati nella vista di sistema pg_stats. In un secondo momento, il pianificatore di query utilizza queste statistiche per determinare i piani di esecuzione più efficienti per le query.
In Aurora DSQL, non è possibile eseguire il comando ANALYZE all’interno di una transazione esplicita. ANALYZEnon è soggetto al limite di timeout delle transazioni del database.
Per ridurre la necessità di interventi manuali e mantenere le statistiche costantemente aggiornate, Aurora DSQL esegue automaticamente ANALYZE come processo in background. Questo processo in background viene attivato automaticamente in base al tasso di variazione osservato nella tabella. È collegato al numero di righe (tuple) che sono state inserite, aggiornate o eliminate dall’ultima analisi.
ANALYZE viene eseguito in modo asincrono in background e la sua attività può essere monitorata nella vista di sistema sys.jobs con la seguente query:
SELECT * FROM sys.jobs WHERE job_type = 'ANALYZE';
Considerazioni chiave
Nota
Le attività ANALYZE vengono fatturate come le altre attività asincrone in Aurora DSQL. Quando si modifica una tabella, ciò può attivare indirettamente un processo automatico di raccolta di statistiche in background, che può comportare addebiti di costi dovuti all’attività associata a livello di sistema.
Le attività ANALYZE in background, attivate automaticamente, raccolgono gli stessi tipi di statistiche utilizzate da un comando ANALYZE avviato manualmente e le applicano per impostazione predefinita alle tabelle utente. Le tabelle di sistema e di catalogo sono escluse da questo processo automatizzato.