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à.
Utilizzo di unità di condivisione dati gestite da Lake Formation in qualità di consumer
Con Amazon Redshift, puoi accedere e analizzare i dati condivisi con te tramite AWS Lake Formation datashare. Un datashare è un prodotto di dati che contiene una raccolta di oggetti di dati, come tabelle o database, provenienti da diverse fonti di dati.
Dopo che l' AWS Lake Formation amministratore ha scoperto l'invito alla condivisione di dati e creato un database AWS Glue Data Catalog che si collega al datashare, l'amministratore del cluster di consumatori o del gruppo di lavoro può associare il cluster al datashare e al database nel database AWS Glue Data Catalog, creare un database locale al cluster di consumatori o al gruppo di lavoro e concedere l'accesso a utenti e ruoli nel cluster di consumatori o nel gruppo di lavoro di Amazon Redshift per avviare le query. Segui la procedura riportata sotto per impostare le autorizzazioni per eseguire query.
-
Nella console Amazon Redshift crea un gruppo di lavoro o un cluster consumer Amazon Redshift, se necessario. Per informazioni su come creare un cluster, consulta Creazione di un cluster.
-
Per elencare a quali database del cluster di AWS Glue Data Catalog consumatori o del gruppo di lavoro hanno accesso gli utenti, esegui il SHOWDATABASEScomando.
SHOW DATABASES FROM DATA CATALOG [ACCOUNT <account-id>,<account-id2>] [LIKE <expression>]
In questo modo vengono elencate le risorse disponibili nel Data Catalog, ad esempio il AWS Glue databaseARN, il nome del database e le informazioni sul datashare.
-
Utilizzando il AWS Glue database ARN di SHOWDATABASES, crea un database locale nel cluster di consumatori o nel gruppo di lavoro. Per ulteriori informazioni, vedere CREATEDATABASE.
CREATE DATABASE lf_db FROM ARN <lake-formation-database-ARN> WITH [NO] DATA CATALOG SCHEMA [<schema>];
-
Fornisci ai ruoli o agli utenti nel gruppo di lavoro o nel cluster consumer l'accesso per i database e i riferimenti allo schema creati dalle unità di condivisione dati in base alle esigenze. Per ulteriori informazioni, vedere GRANTo REVOKE. Nota che gli utenti creati dal CREATEUSERcomando non possono accedere agli oggetti nel datashare che sono stati condivisi con Lake Formation. Solo gli utenti con accesso sia a Redshift che a Lake Formation possono accedere alle unità di condivisione dati condivise con Lake Formation.
GRANT USAGE ON DATABASE sales_db TO IAM:Bob;
In qualità di amministratore del gruppo di lavoro o del cluster consumer, puoi assegnare le autorizzazioni per l'intero database creato dall'unità di condivisione dati solo agli utenti e ai ruoli. In alcuni casi, sono necessari controlli a grana fine su un sottoinsieme di oggetti di database creati dall'unità di condivisione dati.
È inoltre possibile creare viste ad associazione tardiva sugli oggetti condivisi e utilizzarle per assegnare autorizzazioni granulari. Inoltre puoi stabilire che i gruppi di lavoro o i cluster producer creino ulteriori unità di condivisione dati con la granularità richiesta. È possibile creare il maggior numero di riferimenti allo schema al database creato dall'unità di condivisione dati.
-
Gli utenti del database possono utilizzare le viste SVV _ EXTERNAL _ TABLES e SVV _ EXTERNAL _ COLUMNS per trovare tutte le tabelle o le colonne condivise all'interno del database AWS Glue
SELECT * from svv_external_tables WHERE redshift_database_name = 'lf_db'; SELECT * from svv_external_columns WHERE redshift_database_name = 'lf_db';
-
Eseguire una query sui dati negli oggetti condivisi nelle unità di condivisione dati.
Gli utenti e i ruoli con autorizzazioni per i database consumer e gli schemi nei gruppi di lavoro o nei cluster consumer possono esplorare e navigare tra i metadati di qualsiasi oggetto condiviso. Possono inoltre esplorare e navigare tra oggetti locali in un gruppo di lavoro o un cluster consumer. A tale scopo, possono utilizzare i ODBC driver JDBC o le EXTERNAL viste SVV _ ALL e SVV _.
SELECT * FROM lf_db.schema.table;
È possibile utilizzare SELECT istruzioni solo su oggetti condivisi. Tuttavia, è possibile creare tabelle nel cluster consumer eseguendo una query sui dati degli oggetti condivisi in un database locale diverso.
// Connect to a local cluster database // Create a view on shared objects and access it.
CREATE VIEW sales_data AS SELECT * FROM sales_db.public.tickit_sales_redshift WITH NO SCHEMA BINDING; SELECT * FROM sales_data;