Amazon Redshift non supporterà più la creazione di nuovi Python a UDFs partire dal 1° novembre 2025. Se vuoi usare Python UDFs, crea la UDFs data precedente a quella data. Python esistente UDFs continuerà a funzionare normalmente. Per ulteriori informazioni, consulta il post del blog
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à.
AWS Glue Data Catalog visualizzazioni
Questo argomento descrive come creare viste in AWS Glue Data Catalog. È possibile utilizzare le viste del Data Catalog per accedere ai dati in diverse fonti di dati utilizzando lo stesso schema.
Creando viste nel Data Catalog, puoi creare un unico schema di visualizzazione comune e un oggetto di metadati da utilizzare su più motori come Amazon Athena e Amazon EMR Spark. In questo modo puoi utilizzare le stesse viste su data lake e data warehouse e adattarle ai tuoi casi d'uso. Le viste nel Catalogo dati sono speciali in quanto sono classificate come viste di definizione, in cui le autorizzazioni di accesso sono definite dall'utente che ha creato la vista anziché dall'utente che esegue la query sulla vista. Di seguito sono riportati alcuni casi d'uso e i vantaggi derivanti dalla creazione di viste nel Catalogo dati:
-
Crea una vista che limiti l'accesso ai dati in base alle autorizzazioni necessarie all'utente. Ad esempio, puoi utilizzare le viste nel Catalogo dati per impedire ai dipendenti che non lavorano nel reparto delle risorse umane di visualizzare le informazioni di identificazione personale (PII).
-
Assicurati che gli utenti non possano accedere ai record incompleti. Applicando i filtri alla vista nel Catalogo dati, ti assicuri che i record di dati all'interno di una vista nel Catalogo dati siano sempre completi.
-
Le viste del Catalogo dati includono un vantaggio di sicurezza nel garantire che la definizione della query utilizzata debba essere completata per creare la vista. Questo vantaggio di sicurezza significa che le viste del Catalogo dati non sono suscettibili ai comandi SQL di utenti malintenzionati.
-
Le viste del Catalogo dati offrono gli stessi vantaggi delle viste normali, ad esempio consentono agli utenti di accedere a una vista senza rendere disponibile la tabella sottostante.
Per creare una vista nel Catalogo dati è necessario disporre di una tabella esterna Spectrum, un oggetto contenuto in un'unità di condivisione dati gestita da Lake Formation o una tabella Apache Iceberg.
Le definizioni delle viste del Catalogo dati sono archiviate nel AWS Glue Data Catalog. Utilizzalo AWS Lake Formation per concedere l'accesso tramite concessioni di risorse, concessioni di colonne o controlli di accesso basati su tag. Per ulteriori informazioni sull'assegnazione e la revoca dell'accesso a Lake Formation, consulta Granting and revoking permissions on Data Catalog resources.
Quando usi Amazon Redshift per eseguire una query che fa riferimento a tali AWS Glue Data Catalog viste, Amazon Redshift maschera automaticamente i campi in determinate tabelle di sistema e colonne di visualizzazione durante la registrazione dei metadati relativi a tale query. Per ulteriori informazioni, consulta Secure Logging nella Amazon Redshift Management Guide.
Prerequisiti
Prima di poter creare una vista nel Catalogo dati, assicurati di aver soddisfatto i seguenti prerequisiti:
Assicurati che il ruolo IAM abbia la seguente policy di trust.
-
È inoltre necessaria la seguente policy per il passaggio di ruoli.
Infine, sono necessarie anche le seguenti autorizzazioni.
Glue:GetDatabase
Glue:GetDatabases
Glue:CreateTable
Glue:GetTable
Glue:UpdateTable
Glue:DeleteTable
Glue:GetTables
Glue:SearchTables
Glue:BatchGetPartition
Glue:GetPartitions
Glue:GetPartition
Glue:GetTableVersion
Glue:GetTableVersions
End-to-end esempio
Inizia creando uno schema esterno basato sul database Catalogo dati.
CREATE EXTERNAL SCHEMA IF NOT EXISTS external_schema FROM DATA CATALOG DATABASE 'external_data_catalog_db' IAM_ROLE 'arn:aws:iam::123456789012:role/sample-role';
Ora puoi creare una vista nel Catalogo dati.
CREATE EXTERNAL PROTECTED VIEW external_schema.remote_view AS SELECT * FROM external_schema.remote_table;
Puoi quindi iniziare a eseguire le query sulla tua vista.
SELECT * FROM external_schema.remote_view;
Per ulteriori informazioni sui comandi SQL relativi alle viste nel Catalogo dati, consulta CREATE EXTERNAL VIEW, ALTER EXTERNAL VIEW e DROP EXTERNAL VIEW.
Considerazioni e limitazioni
Di seguito sono riportate le considerazioni e le limitazioni che si applicano alle viste create nel Catalogo dati.
AWS Glue Data Catalog le visualizzazioni sono supportate solo su cluster con RA3 provisioning o gruppi di lavoro Redshift Serverless.
Non è possibile creare una vista del Catalogo dati basata su un'altra vista.
È possibile avere solo 10 tabelle di base in una vista del Catalogo dati.
Il definitore della vista deve disporre delle autorizzazioni
SELECT GRANTABLE
complete per le tabelle di base.Le viste possono contenere solo oggetti e integrazioni di Lake Formation. I seguenti oggetti non sono consentiti all'interno di una vista.
Tabelle di sistema
UDFsFunzioni definite dall'utente ()
Tabelle, viste, viste materializzate e viste con associazione tardiva di Redshift che non si trovano in una condivisione dati gestita da Lake Formation.
Le viste non possono contenere tabelle Redshift Spectrum annidate.
AWS Glue le rappresentazioni degli oggetti di base di una vista devono trovarsi nella stessa Account AWS regione della vista.