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à.
ALTER MATERIALIZED VIEW
Modifica gli attributi di una vista materializzata.
Sintassi
ALTER MATERIALIZED VIEW mv_name { AUTO REFRESH { YES | NO } | ALTER DISTKEY column_name | ALTER DISTSTYLE ALL | ALTER DISTSTYLE EVEN | ALTER DISTSTYLE KEY DISTKEY column_name | ALTER DISTSTYLE AUTO | ALTER [COMPOUND] SORTKEY ( column_name [,...] ) | ALTER SORTKEY AUTO | ALTER SORTKEY NONE | ROW LEVEL SECURITY { ON | OFF } [ CONJUNCTION TYPE { AND | OR } ] [FOR DATASHARES] };
Parametri
- mv_name
-
Il nome della vista materializzata da modificare.
- AUTO REFRESH { YES | NO }
-
Una clausola che attiva o disattiva l'aggiornamento automatico di una vista materializzata. Per informazioni sull'aggiornamento automatico delle viste materializzate, consultare Aggiornamento di una vista materializzata.
- ALTER DISTSTYLE ALL
-
Una clausola che modifica lo stile di distribuzione esistente di una relazione con.
ALL
Considera i seguenti aspetti:-
ALTER DISTSTYLE, ALTER SORTKEY e VACUUM non possono essere eseguiti contemporaneamente sulla stessa relazione.
-
Se VACUUM è attualmente in esecuzione, l'esecuzione di ALTER DISTSTYLE ALL restituisce un errore.
-
Se ALTER DISTSTYLE ALL è in esecuzione, non viene avviato un vuoto in background su una relazione.
-
-
Il comando ALTER DISTSTYLE ALL non è supportato per le relazioni con chiavi di ordinamento interlacciate e tabelle temporanee.
-
Se lo stile di distribuzione era precedentemente definito come AUTO, la relazione non è più adatta all'ottimizzazione automatica delle tabelle.
Per ulteriori informazioni su DISTSTYLE ALL, vai aCREATE MATERIALIZED VIEW.
-
- ALTER DISTSTYLE EVEN
-
Una clausola che modifica lo stile di distribuzione esistente di una relazione in.
EVEN
Considera i seguenti aspetti:-
ALTER DISTSTYTLE, ALTER SORTKEY e VACUUM non possono essere eseguiti contemporaneamente sulla stessa relazione.
-
Se VACUUM è attualmente in esecuzione, l'esecuzione di ALTER DISTSTYLE EVEN restituisce un errore.
-
Se ALTER DISTSTYLE EVEN è in esecuzione, non viene avviato un vuoto in background su una relazione.
-
-
Il comando ALTER DISTSTYLE EVEN non è supportato per le relazioni con chiavi di ordinamento interlacciate e tabelle temporanee.
-
Se lo stile di distribuzione era precedentemente definito come AUTO, la relazione non è più adatta all'ottimizzazione automatica delle tabelle.
Per ulteriori informazioni su DISTSTYLE EVEN, vai aCREATE MATERIALIZED VIEW.
-
- ALTER DISTKEY column_name o ALTER DISTSTYLE KEY DISTKEY column_name
-
Una clausola che modifica la colonna utilizzata come chiave di distribuzione di una relazione. Considera i seguenti aspetti:
-
VACUUM e ALTER DISTKEY non possono essere eseguiti contemporaneamente sulla stessa relazione.
-
Se VACUUM è già in esecuzione, ALTER DISTKEY restituisce un errore.
-
Se ALTER DISTKEY è in esecuzione, il vuoto in background non si avvia su una relazione.
-
Se ALTER DISTKEY è in esecuzione, il vacuum in primo piano restituisce un errore.
-
-
È possibile eseguire solo un comando ALTER DISTKEY su una relazione alla volta.
-
Il comando ALTER DISTKEY non è supportato per le relazioni con chiavi di ordinamento interlacciate.
-
Se lo stile di distribuzione era precedentemente definito come AUTO, la relazione non è più adatta all'ottimizzazione automatica delle tabelle.
Quando si specifica DISTSTYLE KEY, i dati vengono distribuiti dai valori nella colonna DISTKEY. Per ulteriori informazioni su DISTSTYLE, vai aCREATE MATERIALIZED VIEW.
-
- ALTER DISTSTYLE AUTO
-
Una clausola che modifica lo stile di distribuzione esistente di una relazione in AUTO.
Quando si modifica uno stile di distribuzione in AUTO, lo stile di distribuzione della relazione viene impostato sul seguente:
-
Una piccola relazione con DISTSTYLE ALL viene convertita in AUTO (ALL).
-
Una piccola relazione con DISTSTYLE EVEN viene convertita in AUTO (ALL).
-
Una piccola relazione con DISTSTYLE KEY viene convertita in AUTO (ALL).
-
Una relazione ampia con DISTSTYLE ALL viene convertita in AUTO (EVEN).
-
Una relazione ampia con DISTSTYLE EVEN viene convertita in AUTO (EVEN).
-
Una grande relazione con DISTSTYLE KEY viene convertita in AUTO (KEY) e DISTKEY viene preservata. In questo caso, Amazon Redshift non apporta modifiche alla relazione.
Se Amazon Redshift determina che un nuovo stile o chiave di distribuzione migliorerà le prestazioni delle query, Amazon Redshift potrebbe modificare lo stile di distribuzione o la chiave della tua relazione in futuro. Ad esempio, Amazon Redshift potrebbe convertire una relazione con un DISTSTYLE di AUTO (KEY) in AUTO (EVEN) o viceversa. Per ulteriori informazioni sul comportamento in caso di modifica delle chiavi di distribuzione, inclusa la ridistribuzione dei dati e i blocchi, consulta i consigli di Amazon Redshift Advisor.
Per ulteriori informazioni su DISTSTYLE AUTO, vai a. CREATE MATERIALIZED VIEW
Per visualizzare lo stile di distribuzione di una relazione, interrogate la vista del catalogo del sistema SVV_TABLE_INFO. Per ulteriori informazioni, consulta SVV_TABLE_INFO. Per visualizzare i consigli di Amazon Redshift Advisor per le relazioni, interroga la vista del catalogo di sistema SVV_ALTER_TABLE_RECOMMENDATIONS. Per ulteriori informazioni, consulta SVV_ALTER_TABLE_RECOMMENDATIONS. Per visualizzare le azioni intraprese da Amazon Redshift, eseguire una query sulla vista del catalogo di sistema SVL_AUTO_WORKER_ACTION. Per ulteriori informazioni, consulta SVL_AUTO_WORKER_ACTION.
-
- ALTER [COMPOUND] SORTKEY ( column_name [,...] )
-
Una clausola che modifica o aggiunge la chiave di ordinamento utilizzata per una relazione. ALTER SORTKEY non è supportato per le tabelle temporanee.
Quando si modifica una chiave di ordinamento, la codifica di compressione delle colonne nella chiave di ordinamento nuova o originale può cambiare. Se non viene definita in modo esplicito alcuna codifica per la relazione, Amazon Redshift assegna automaticamente le codifiche di compressione come segue:
-
Le colonne definite come chiavi di ordinamento vengono assegnate alla compressione RAW.
-
Le colonne definite come tipi di dati BOOLEAN, REAL o DOUBLE PRECISION vengono assegnate alla compressione RAW.
-
Alle colonne definite come SMALLINT, INTEGER, BIGINT, DECIMAL, DATE, TIME, TIMETZ, TIMESTAMP o TIMESTAMPTZ viene assegnata la compressione. AZ64
-
Le colonne definite come CHAR o VARCHAR sono assegnate alla compressione LZO.
Considera i seguenti aspetti:
-
È possibile definire un massimo di 400 colonne per una chiave di ordinamento per relazione.
-
È possibile modificare una chiave di ordinamento interlacciata in una chiave di ordinamento composta o nessuna chiave di ordinamento. È possibile modificare una chiave di ordinamento interlacciata in una chiave di ordinamento composta o nessuna chiave di ordinamento.
-
Se la chiave di ordinamento era precedentemente definita come AUTO, la relazione non è più idonea per l'ottimizzazione automatica della tabella.
-
Amazon Redshift consiglia di utilizzare la codifica RAW (senza compressione) per le colonne definite come chiavi di ordinamento. Quando si modifica una colonna per sceglierla come chiave di ordinamento, la compressione della colonna viene modificata in compressione RAW (senza compressione). Ciò può aumentare la quantità di spazio di archiviazione richiesta dalla relazione. L'aumento della dimensione della relazione dipende dalla definizione specifica della relazione e dal contenuto della relazione. Per ulteriori informazioni sulla compressione, consultateCodifiche di compressione.
Quando i dati vengono caricati in una relazione, i dati vengono caricati nell'ordine della chiave di ordinamento. Quando si modifica la chiave di ordinamento, Amazon Redshift riordina i dati. Per ulteriori informazioni su SORTKEY, vai aCREATE MATERIALIZED VIEW.
-
- ALTER SORTKEY AUTO
-
Una clausola che modifica o aggiunge la chiave di ordinamento della relazione di destinazione a AUTO. ALTER SORTKEY AUTO non è supportato per le tabelle temporanee.
Quando modifichi una chiave di ordinamento in AUTO, Amazon Redshift conserva la chiave di ordinamento esistente della relazione.
Se Amazon Redshift determina che una nuova chiave di ordinamento migliorerà le prestazioni delle query, Amazon Redshift potrebbe modificare la chiave di ordinamento della relazione in futuro.
Per ulteriori informazioni su SORTKEY AUTO, vai a. CREATE MATERIALIZED VIEW
Per visualizzare la chiave di ordinamento di una relazione, interrogate la vista del catalogo di sistema SVV_TABLE_INFO. Per ulteriori informazioni, consulta SVV_TABLE_INFO. Per visualizzare i consigli di Amazon Redshift Advisor per le relazioni, interroga la vista del catalogo di sistema SVV_ALTER_TABLE_RECOMMENDATIONS. Per ulteriori informazioni, consulta SVV_ALTER_TABLE_RECOMMENDATIONS. Per visualizzare le azioni intraprese da Amazon Redshift, eseguire una query sulla vista del catalogo di sistema SVL_AUTO_WORKER_ACTION. Per ulteriori informazioni, consulta SVL_AUTO_WORKER_ACTION.
- ALTER SORTKEY NONE
-
Una clausola che rimuove la chiave di ordinamento della relazione di destinazione.
Se la chiave di ordinamento era precedentemente definita come AUTO, la relazione non è più idonea per l'ottimizzazione automatica della tabella.
- ROW LEVEL SECURITY { ON | OFF } [ CONJUNCTION TYPE { AND | OR } ] [ FOR DATASHARES ]
-
Una clausola che attiva o disattiva la sicurezza a livello di riga per una relazione.
Quando per una relazione è attivata la protezione a livello di riga, è possibile leggere solo le righe al livello di riga a cui la policy di sicurezza consente l'accesso. Quando non ci sono policy che consentono l'accesso alla relazione, non è possibile visualizzare alcuna riga dalla relazione. Solo gli utenti con privilegi avanzati e gli utenti o i ruoli che hanno il ruolo
sys:secadmin
possono impostare la clausola ROW LEVEL SECURITY. Per ulteriori informazioni, consulta Sicurezza a livello di riga.-
[ CONJUNCTION TYPE { AND | OR } ]
Una clausola che consente di scegliere il tipo di congiunzione della policy di sicurezza a livello di riga per una relazione. Quando a una relazione sono associate più policy di sicurezza a livello di riga, è possibile combinare le policy con la clausola AND oppure OR. Per impostazione predefinita, Amazon Redshift combina le policy RLS con la clausola AND. Gli utenti con privilegi avanzati, gli utenti o i ruoli che hanno il ruolo
sys:secadmin
possono utilizzare questa clausola per definire il tipo di combinazione della policy di sicurezza a livello di riga per una relazione. Per ulteriori informazioni, consulta Combinazione di più policy per utente. -
FOR DATASHARES
Una clausola che determina se è possibile accedere a una relazione protetta da RLS in un'unità di condivisione dati. Per impostazione predefinita, non è possibile accedere a una relazione protetta da RLS in un'unità di condivisione dati. Il comando ALTER MATERIALIZED VIEW ROW LEVEL SECURITY eseguito con questa clausola influisce solo sulla proprietà di accessibilità dell'unità di condivisione dati della relazione. La proprietà ROW LEVEL SECURITY non viene modificata.
Se rendi accessibile una relazione protetta da RLS nelle unità di condivisione dati, la relazione non dispone di una sicurezza a livello di riga nel database con unità di condivisione dati sul lato consumer. La relazione mantiene la proprietà RLS sul lato producer.
-
Esempi
Nell'esempio seguente la vista materializzata tickets_mv
viene abilitata perché possa essere aggiornata automaticamente.
ALTER MATERIALIZED VIEW tickets_mv AUTO REFRESH YES