Tutorial: Configura il catalogo runtime speculare di Google Lakehouse

Utilizzando il mirroring del catalogo per il catalogo runtime di Google Lakehouse, puoi leggere i dati Apache Iceberg gestiti in Google Cloud Lakehouse dai carichi di lavoro Microsoft Fabric.

Importante

Questa funzionalità si trova in Anteprima.

Prerequisiti

  • Un progetto Google Cloud con fatturazione abilitata e l'API BigLake attivata.
  • Un catalogo di runtime di Google Lakehouse che contiene le tabelle Apache Iceberg V2 che si desidera replicare. I tavoli Iceberg V1 non sono supportati.
  • L'endpoint del catalogo REST di Apache Iceberg e le località di Google Cloud Storage che memorizzano i dati di Iceberg sono raggiungibili tramite internet pubblico. Le regole del firewall e altre restrizioni di rete attualmente non sono supportate. Vedere limitazioni e considerazioni di questa funzionalità.
  • Autorizzazione a creare e gestire un pool di identità per i carichi di lavoro di Google Cloud e un provider, nonché a concedere ruoli IAM di Google Cloud.
  • ID tenant di Microsoft Entra. Se usi binding di identità individuali, ottieni anche l'ID dell'oggetto di ogni identità Microsoft Entra che vuoi autorizzare.
  • Uno spazio di lavoro Fabric associato a una capacità Fabric (SKU F o Trial).
  • L'amministratore del tenant Fabric deve abilitare l'impostazione di amministrazione del tenant intitolata "Abilita nuovi elementi del catalogo duplicati (Anteprima)".

Configura Workload Identity Federation di Google Cloud

La funzionalità di mirroring del catalogo di runtime di Google Lakehouse utilizza Google Cloud Workload Identity Federation per considerare attendibili i token di Microsoft Entra. Completa la seguente configurazione di Google Cloud prima di creare la connessione Fabric.

Seleziona il progetto Google Cloud

  1. Nella console Google Cloud, seleziona il progetto che possiede il Workload Identity Pool.
  2. Annota sia l'ID del progetto che il numero numerico del progetto. Non puoi usare l'ID e il numero di progetto in modo intercambiabile.
  3. Abilita l'API di BigLake per il progetto.

Crea un pool di identità per i carichi di lavoro

  1. Nella console Google Cloud, vai su IAM & Admin>Workload Identity Federation.
  2. Seleziona Crea pool.
  3. Inserisci il nome del pool e l'ID del pool.
  4. Assicurati che il pool sia abilitato. La posizione della piscina è global.
  5. Annota l'ID della piscina.

Aggiungi un fornitore OIDC

  1. Apri il pool di identità del carico di lavoro, quindi seleziona Aggiungi provider. Puoi anche aggiungere il provider mentre crei il pool.

  2. Per il tipo di provider, seleziona OpenID Connect (OIDC).

  3. Configura il provider con i seguenti valori. Sostituire {TENANT_ID} con l'ID tenant di Microsoft Entra.

    Impostazione del provider Valore da immettere Note
    ID provider Un ID del fornitore che scegli tu Registra questo valore per la connessione Fabric.
    URL dell’emittente https://sts.windows.net/{TENANT_ID}/ Il valore, inclusa la barra finale, deve corrispondere esattamente al claim del token iss.
    Destinatari consentiti https://analysis.windows.net/powerbi/connector/MirroredGoogleLakehouseRuntimeCatalog Il valore deve corrispondere esattamente alla rivendicazione del token aud .
    Mappatura degli attributi google.subject = assertion.oid L'ID oggetto Microsoft Entra diventa il soggetto federato di Google.
  4. Salva e abilita il provider.

  5. Conferma di aver registrato il numero numerico del progetto, l'ID del pool e l'ID del fornitore. Servono tutti e tre i valori per la connessione Fabric.

Aggiungi identità Microsoft Entra come entità IAM

Associa i ruoli di Google Cloud all'identità o alle identità di Microsoft Entra che Fabric utilizza. Per l'accesso con privilegio minimo, aggiungi ogni identità separatamente con questo identificatore principale:

principal://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/subject/ENTRA_OID

Sostituisci PROJECT_NUMBER, POOL_ID e ENTRA_OID con il numero del progetto Google Cloud, l'ID del pool di identità dei carichi di lavoro e l'ID oggetto Microsoft Entra.

Per concedere l'accesso a ogni identità accettata dal Workload Identity Pool, puoi invece usare questo insieme di principi:

principalSet://iam.googleapis.com/projects/PROJECT_NUMBER/locations/global/workloadIdentityPools/POOL_ID/*

Caution

Il set di principi jolly assegna il ruolo a ogni identità che si federa con successo nel pool. L'emittente del provider, il pubblico consentito, la mappatura degli attributi e qualsiasi condizione degli attributi controllano ancora quali token vengono accettati. Se il pool contiene più fornitori, il jolly può includere identità di tutti loro. Utilizzare associazioni individuali del soggetto o un insieme di identità principali basato su attributi più ristretto quando è necessario un accesso con privilegi minimi.

Concedere al principale o al principale selezionato stabilire questi ruoli nel campo di risorsa più ristretto e appropriato:

Ruolo ID del ruolo
BigLake Viewer roles/biglake.viewer
Consumatore di Utilizzo del Servizio roles/serviceusage.serviceUsageConsumer

Configura l'accesso ai dati della tabella

Il catalogo runtime di Google Lakehouse deve essere in grado di autorizzare l'accesso ai bucket di Cloud Storage che contengono i dati della tabella:

  • Se il catalogo utilizza il vending di credenziali, concedere all'account di servizio auto-provisionato del catalogo il ruolo Storage Object User (roles/storage.objectUser) su ogni bucket associato. L'identità federata Microsoft Entra non ha bisogno di accesso diretto a quei bucket.
  • Se il catalogo utilizza credenziali utente finale, conceda al principale federato l'accesso di lettura richiesto a ogni bucket associato.

Per maggiori informazioni sulle modalità di credenziali del catalogo e sui ruoli richiesti, vedi Configura l'endpoint del catalogo REST di Apache Iceberg.

Raccogli i valori delle connessioni del catalogo

Prima di creare la connessione Fabric, raccogli questi valori da Google Cloud:

  • URL - Usa l'endpoint stabile del catalogo REST di Google Lakehouse Apache Apache Iceberg: https://biglake.googleapis.com/iceberg/v1/restcatalog.
  • Magazzino - Per un catalogo con più bucket, usa bl://projects/PROJECT_ID/catalogs/CATALOG_ID. Per un catalogo a singolo secchio, usa gs://CLOUD_STORAGE_BUCKET_NAME.
  • Project ID - Usa il progetto Google Cloud a cui vengono addebitate le richieste all'endpoint del catalogo REST di Apache Iceberg.
  • Project number - Usa il numero numerico del project per il project che possiede il Workload Identity Pool.
  • ID Pool - Usa l'ID del Workload Identity Pool che si fida dei token Microsoft Entra.
  • ID provider - Usa l'ID del provider OIDC che hai configurato nel pool.

Per ulteriori informazioni sui percorsi dei magazzini e sui tipi di catalogo, vedi Informazioni sull'endpoint del catalogo REST di Apache Iceberg.

Crea un catalogo runtime di Google Lakehouse in specchio

Segui questi passaggi per creare un catalogo di runtime speculare di Google Lakehouse in Fabric.

  1. Passare a https://powerbi.com.

  2. Seleziona + Nuovo, poi seleziona Catalogo runtime di Google Lakehouse specchiato (anteprima).

  3. Selezionare una connessione esistente se ne è stata configurata una.

    Se non hai una connessione esistente, crea una connessione e inserisci i dettagli richiesti:

    • Per URL, inserisci https://biglake.googleapis.com/iceberg/v1/restcatalog.
    • Per Warehouse, inserisci il percorso del magazzino bl:// o gs:// per il tuo catalogo.
    • In ID progetto, inserisci il progetto Google Cloud a cui vengono fatturate le richieste di catalogo.
    • Per le impostazioni della Federazione Identità del Carico di Lavoro, inserisci il numero numerico del Project, l'ID del Pool e l'ID del Provider che hai registrato in Configura Federazione Identità del Carico di Lavoro di Google Cloud.
    • Autentica con un'identità Microsoft Entra che hai aggiunto come IAM principal.
  4. Dopo esserti connesso al catalogo del runtime Google Lakehouse, nella pagina Scegli dati, seleziona l'ambito del catalogo che vuoi rispecchiare. Poi, attraverso le liste di inclusione ed esclusione, seleziona i namespace e le tabelle che vuoi aggiungere a Fabric.

    • Puoi vedere solo i namespace e le tabelle a cui l'identità federata Microsoft Entra ha il permesso di accedere.
    • Per impostazione predefinita, l'opzione Sincronizza automaticamente le tabelle future è abilitata. Per maggiori informazioni, consulta Google Lakehouse runtime catalog mirroring.

    Quando hai finito di fare le selezioni, seleziona Avanti.

  5. Nella pagina Recensione e creazione , rivedi i dettagli e imposta il nome dell'articolo del catalogo specchiato. Il nome deve essere unico nel tuo spazio di lavoro. Fare clic su Crea.

  6. Viene creato un elemento replicato del catalogo di runtime di Google Lakehouse. Per ogni tabella, viene creato automaticamente anche un collegamento corrispondente.

    • I namespace che non contengono tabelle non vengono mostrati.
  7. Visualizza i dati selezionando una tabella o aprendo l'endpoint di analisi SQL. Apri l'elemento dell'endpoint di analisi SQL per avviare la pagina dell'Esploratore e dell'Editor di Query. Puoi interrogare le tue tabelle speculari con T-SQL nell'editor SQL.

Crea scorciatoie lakehouse per l'elemento del catalogo mirrorato

Puoi anche creare scorciatoie da una casa sul lago al tuo elemento di runtime di Google Lakehouse in specchio, così puoi usare i dati del catalogo insieme ai dati di lakehouse e ai quaderni Spark.

  1. Creare una lakehouse. Se hai già una casa sul lago in questo spazio di lavoro, puoi usare quella attuale.
    1. Selezionare l'area di lavoro nel menu di navigazione.
    2. Selezionare + Nuovo>lakehouse.
    3. Immettere un nome per il lakehouse e quindi selezionare Crea.
  2. Nella vista Esplora della tua casa sul lago, nel menu Acquista dati nel menu della casa sul lago , sotto Carica dati nella tua casa sul lago, seleziona Nuova scorciatoia.
  3. Selezionare Microsoft OneLake. Seleziona l'elemento speculare del catalogo runtime di Google Lakehouse che hai creato nei passaggi precedenti, poi seleziona Next.
  4. Seleziona le tabelle all'interno dello spazio di nomi, poi seleziona Avanti.
  5. Fare clic su Crea.
  6. Le scorciatoie ora sono disponibili nella tua casa sul lago. Puoi usare notebook e Spark per elaborare i dati del catalogo runtime di Google Lakehouse insieme agli altri dati di Lakehouse.