View a markdown version of this page

Interrogazione dei dati tramite AWS Lake Formation - Amazon Redshift

Amazon Redshift non supporterà più l'uso delle UDF Python dopo il 30 giugno 2026. Inizieremo ad applicarlo per fasi. Per ulteriori informazioni sulla fine del ciclo di vita e sulle opzioni di migrazione di Python, consulta il post del blog pubblicato il 30 giugno 2025.

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

Interrogazione dei dati tramite AWS Lake Formation

L'utilizzo AWS Lake Formation semplifica la gestione e la protezione centralizzate del data lake e la fornitura dell'accesso ai dati. La configurazione della propagazione dell'identità a Lake Formation tramite AWS IAM Identity Center e Redshift consente a un amministratore di consentire l'accesso granulare a un data lake Amazon S3, in base ai gruppi di provider di identità (IdP) dell'organizzazione. Questi gruppi sono gestiti tramite Centro identità AWS IAM. Questa sezione mostra come configurare un paio di casi d'uso, interrogazione da un data lake e interrogazione da una condivisione di dati, che dimostrano come sfruttare IAM Identity Center con Redshift per connettersi alle risorse Lake. AWS Formation-governed

Utilizzando un AWS Connessione IAM Identity Center e Redshift per interrogare un data lake

Questi passaggi riguardano un caso d'uso in cui si utilizza AWS IAM Identity Center connesso a Redshift per interrogare un data lake governato da Lake Formation.

Prerequisiti

Questa procedura prevede diversi prerequisiti:

  1. AWS IAM Identity Center deve essere configurato per supportare l'autenticazione e la gestione delle identità con Redshift. Puoi abilitare AWS IAM Identity Center dalla console e selezionare una fonte di provider di identità (IdP). Dopodiché, sincronizza un set di utenti IdP con IAM Identity Center. AWS È inoltre necessario configurare una connessione tra AWS IAM Identity Center e Redshift, seguendo i passaggi descritti in precedenza in questo documento.

  2. Crea un nuovo cluster Amazon Redshift e abilita la gestione delle identità tramite AWS IAM Identity Center nelle fasi di configurazione.

  3. Crea un'applicazione AWS IAM Identity Center gestita per Lake Formation e configurala. Segue la configurazione della connessione tra AWS IAM Identity Center e Redshift. Di seguito sono riportati i passaggi:

    1. In AWS CLI, usa il modify-redshift-idc-application comando per abilitare l'integrazione del servizio Lake Formation con l'applicazione gestita da AWS IAM Identity Center per Redshift. Questa chiamata include il parametro service-integrations, che è impostato su un valore di stringa di configurazione che consente l'autorizzazione per Lake Formation.

    2. Configura Lake Formation utilizzando il comando create-lake-formation-identity-center-configuration, Questo crea un'applicazione AWS IAM Identity Center per Lake Formation, visibile nel portale AWS IAM Identity Center. L'amministratore deve impostare l'––cli-input-jsonargomento, il cui valore è il percorso di un file JSON che utilizza il formato standard per tutte le chiamate API AWS CLI. È necessario specificare i seguenti valori:

      • CatalogId: l'ID catalogo di Lake Formation.

      • InstanceArn— Il valore ARN dell'istanza AWS IAM Identity Center.

Una volta completata la configurazione dei prerequisiti, l'amministratore del database può creare uno schema esterno allo scopo di eseguire query sul data lake.

  1. L'amministratore crea lo schema esterno: l'amministratore del database Redshift si connette al database e crea uno schema esterno, utilizzando la seguente istruzione SQL:

    CREATE EXTERNAL SCHEMA if not exists my_external_schema from DATA CATALOG database 'my_lf_integrated_db' catalog_id '12345678901234';

    Nota che in questo caso non è necessario specificare un ruolo IAM, perché l'accesso è gestito tramite AWS IAM Identity Center.

  2. L'amministratore concede le autorizzazioni: l'amministratore concede l'utilizzo a un gruppo AWS IAM Identity Center, che concede le autorizzazioni sulle risorse Redshift. Per farlo, esegue un'istruzione SQL come la seguente:

    GRANT USAGE ON SCHEMA "my_external_schema" to "MYCO:sales";

    Successivamente, l'amministratore concede a Lake Formation le autorizzazioni sugli oggetti, in base ai requisiti dell'organizzazione, utilizzando la CLI: AWS

    aws lakeformation grant-permissions ...
  3. Gli utenti eseguono le query: a questo punto, un utente di Centro identità AWS IAM che fa parte del gruppo di vendita, a scopo illustrativo, può accedere tramite Query Editor V2 al database Redshift. Quindi può eseguire una query che accede a una tabella nello schema esterno, come nell'esempio seguente:

    SELECT * from my_external_schema.table1;

Utilizzando un AWS Connessione IAM Identity Center e Redshift per connettersi a una condivisione di dati

È possibile accedere a una condivisione dati da un data warehouse Redshift diverso quando l'accesso è gestito tramite IAM Identity Center. AWS A tale scopo, esegui una query per configurare un database esterno. Prima di completare questi passaggi, si presume che tu abbia configurato una connessione tra Redshift e AWS IAM Identity Center e che tu abbia creato l' AWS Lake Formation applicazione, come descritto nella procedura precedente.

  1. Creazione del database esterno: l'amministratore crea un database esterno per la condivisione dei dati usando come riferimento il relativo ARN. Di seguito è riportato un esempio che mostra come eseguire questa operazione:

    CREATE DATABASE "redshift_external_db" FROM ARN 'arn:aws:glue:us-east-1:123456789012:database/redshift_external_db-iad' WITH NO DATA CATALOG SCHEMA;

    In questo caso d'uso, se utilizzi AWS IAM Identity Center con Redshift per la gestione delle identità, il ruolo IAM non è incluso.

  2. L'amministratore imposta le autorizzazioni: dopo aver creato un database, l'amministratore concede l'utilizzo a un gruppo AWS IAM Identity Center. In tal modo si forniscono le autorizzazioni per le risorse Redshift:

    GRANT USAGE ON DATABASE "my_external_db" to "MYCO:sales";

    L'amministratore fornisce anche le autorizzazioni di Lake Formation per gli oggetti, tramite la AWS CLI:

    aws lakeformation grant-permissions ...
  3. Gli utenti eseguono le query: un utente del gruppo di vendita può eseguire le query su una tabella nel database, in base alle autorizzazioni assegnate:

    select * from redshift_external_db.public.employees;

Per ulteriori informazioni sull'assegnazione delle autorizzazioni per un data lake e per le unità di condivisione dati, consulta Granting permissions to users and groups. Per ulteriori informazioni sull'assegnazione dell'utilizzo per uno schema o un database, consulta GRANT.