Crea un servizio Dataproc Metastore

Questa pagina mostra come creare un servizio Dataproc Metastore.

Dopo aver creato il servizio Dataproc Metastore, puoi importare metadati e connettersi a uno qualsiasi dei seguenti servizi:

Dopo aver collegato uno di questi servizi, l'app utilizza i tuoi Servizio Dataproc Metastore come metastore Hive durante la query dell'esecuzione.

Prima di iniziare

Ruoli obbligatori

Per ottenere l'autorizzazione necessaria per creare un Dataproc Metastore, chiedi all'amministratore di concederti i seguenti ruoli IAM sul tuo progetto, in base al principio del privilegio minimo:

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene metastore.services.create, che è per creare un Dataproc Metastore.

Potresti anche riuscire a ottenere questa autorizzazione con ruoli personalizzati e altri ruoli predefiniti.

Per ulteriori informazioni su ruoli e autorizzazioni specifici di Dataproc Metastore, consulta Gestire l'accesso con IAM.

Crea Dataproc Metastore utilizzando le impostazioni predefinite

Creazione di un Dataproc Metastore utilizzando le impostazioni predefinite configura il tuo servizio con un livello enterprise, una dimensione di istanza media, l'ultima versione di Hive Metastore, un endpoint Thrift e una posizione di us-central.

Dataproc Metastore 2

Le seguenti istruzioni mostrano come creare un Dataproc Metastore 2 utilizzando un endpoint Thrift e altre impostazioni predefinite fornite.

Console

  1. Nella console Google Cloud, vai a Dataproc Metastore .

    Vai a Dataproc Metastore

  2. Nella barra di navigazione, fai clic su +Crea.

    Si apre la finestra di dialogo Crea servizio Metastore.

  3. Seleziona Dataproc Metastore 2.

  4. Nella sezione Prezzi e capacità, scegli una dimensione di istanza.

    Per ulteriori informazioni, consulta la sezione sui piani tariffari e sulle configurazioni di scalabilità.

  5. Nel campo Nome servizio, inserisci un nome univoco per il servizio.

    Per informazioni sulle convenzioni di denominazione, vedi Convenzione di denominazione delle risorse.

  6. Seleziona Località dei dati.

    Per ulteriori informazioni sulla selezione della regione appropriata, consulta Regioni e zone disponibili ed endpoint a livello di regione.

  7. Per le restanti opzioni di configurazione del servizio, utilizza i valori predefiniti forniti.

  8. Per creare e avviare il servizio, fai clic su Invia.

    Il nuovo servizio metastore viene visualizzato in Dataproc Metastore . Lo stato mostra Creazione in corso finché il servizio non è pronto per l'uso. Quando è pronto, lo stato diventa Attivo. Il provisioning del servizio potrebbe richiedere alcuni minuti.

Interfaccia a riga di comando gcloud

Per creare un servizio metastore Dataproc Metastore 2 utilizzando il comando predefiniti forniti, esegui questo comando gcloud metastore services create :

gcloud metastore services create SERVICE \
  --location=LOCATION \
  --instance-size=INSTANCE_SIZE \
  --scaling-factor=SCALING_FACTOR

Sostituisci quanto segue:

  • SERVICE: il nome del tuo nuovo Servizio Dataproc Metastore.
  • LOCATION: la regione Google Cloud che ti interessa in cui creare Dataproc Metastore. Puoi anche impostare una località predefinita.

    Per informazioni sulle convenzioni di denominazione, vedi Convenzione di denominazione delle risorse.

  • INSTANCE_SIZE: le dimensioni dell'istanza Dataproc Metastore in più regioni. Ad esempio, small, medium o large. Se specifichi un valore per INSTANCE_SIZE, non specifica un valore per SCALING_FACTOR.

  • SCALING_FACTOR: il fattore di scalabilità del tuo servizio Dataproc Metastore. Ad esempio: 0.1. Se specifichi un valore per SCALING_FACTOR, non specificare un valore per INSTANCE_SIZE.

REST

Segui le istruzioni dell'API per creare un servizio utilizzando Explorer API.

Dataproc Metastore 1

Le seguenti istruzioni mostrano come creare un Dataproc Metastore 1 utilizzando un endpoint Thrift e altre impostazioni predefinite fornite.

Console

  1. Nella console Google Cloud, vai a Dataproc Metastore .

    Vai a Dataproc Metastore

  2. Nella barra di navigazione, fai clic su +Crea.

    Si apre la finestra di dialogo Crea servizio Metastore.

  3. Seleziona Dataproc Metastore 1.

  4. Nel campo Nome servizio, inserisci un nome univoco per il servizio.

    Per informazioni sulle convenzioni di denominazione, vedi Convenzione di denominazione delle risorse.

  5. Seleziona Località dei dati.

    Per ulteriori informazioni sulla selezione della regione appropriata, consulta Regioni e zone disponibili ed endpoint a livello di regione.

  6. Per le restanti opzioni di configurazione del servizio, utilizza i valori predefiniti forniti.

  7. Per creare e avviare il servizio, fai clic su Invia.

    Il nuovo servizio metastore viene visualizzato in Dataproc Metastore . Lo stato mostra Creazione in corso finché il servizio non è pronto per l'uso. Quando è pronto, lo stato diventa Attivo. Il provisioning del servizio potrebbe richiedere un paio di minuti.

Interfaccia a riga di comando gcloud

Per creare un servizio metastore di base utilizzando i valori predefiniti forniti, esegui questo gcloud metastore services create :

gcloud metastore services create SERVICE \
  --location=LOCATION

Sostituisci quanto segue:

REST

Segui le istruzioni dell'API per creare un servizio utilizzando Explorer API.

Crea Dataproc Metastore utilizzando le impostazioni avanzate

Creazione di un Dataproc Metastore utilizzando le impostazioni avanzate mostra che è necessario modificare le configurazioni, come le configurazioni di rete, impostazioni degli endpoint, delle impostazioni di sicurezza e delle funzionalità facoltative.

Dataproc Metastore 2 o 1

Le seguenti istruzioni mostrano come creare un Dataproc Metastore 2 o un servizio Dataproc Metastore 1 che utilizza funzionalità impostazioni.

Console

Inizia

  1. Nella console Google Cloud, apri la pagina Dataproc Metastore:

    Apri Dataproc Metastore

  2. Nel menu di navigazione, fai clic su +Crea.

    Si apre la finestra di dialogo Crea servizio Metastore.

  3. Seleziona la versione di Metastore che vuoi utilizzare, Dataproc Metastore 1 o Dataproc Metastore 2.

    Informazioni sul servizio

    Pagina Crea servizio
    Esempio della pagina Crea servizio

    1. (Facoltativo): per Dataproc Metastore 2. Nella sezione Prezzi e capacità scegli una dimensione dell'istanza.

      Per ulteriori informazioni, consulta la sezione sui piani tariffari e sulle configurazioni di scalabilità.

    2. Nel campo Nome servizio, inserisci un nome univoco per il servizio.

      Per informazioni sulle convenzioni di denominazione, vedi Convenzione di denominazione delle risorse.

    3. Seleziona Località dei dati.

      Per ulteriori informazioni sulla selezione della regione appropriata, consulta Regioni e zone disponibili ed endpoint a livello di regione.

    4. Seleziona la versione del Metastore di Hive.

      Se questo valore non viene modificato, il servizio utilizza la versione più recente supportata versione di Hive (attualmente la versione 3.1.2).

      Per ulteriori informazioni sulla scelta della versione corretta, consulta Criterio di versione.

    5. Seleziona il Canale di rilascio.

      Se questo valore non viene modificato, il metastore utilizza il valore Stable. Per maggiori informazioni, consulta la sezione Canale di rilascio.

    6. Inserisci la porta TCP.

      La porta TCP a cui si connette l'endpoint Thrift. Se questo valore è non modificata, viene utilizzato il numero di porta 9083. Se modifichi a gRPC, questo valore diventa automaticamente 443 e non può modifiche.

    7. (Facoltativo) Per Dataproc Metastore 1. Seleziona il Livello di servizio.

      Il livello di servizio influenza la capacità del tuo servizio. Per maggiori informazioni, consulta Livello di servizio.

    Protocollo endpoint

    • (Facoltativo) Scegli un protocollo endpoint.

      L'opzione selezionata per impostazione predefinita è Apache Thrift. Per ulteriori informazioni sui diversi endpoint, vedi Scegliere il protocollo degli endpoint.

    Configurazione di rete

    1. Seleziona una Configurazione di rete.

      Per impostazione predefinita, il servizio è esposto in una sola rete VPC e utilizza sulla rete default. La rete default consente solo il tuo servizio per la connessione ad altri servizi nello stesso progetto.

      Modifica le impostazioni della rete da quelle predefinite per completare la le seguenti azioni:

      • Connetti il tuo servizio Dataproc Metastore a Dataproc Metastore in altri progetti.
      • Utilizza il tuo servizio Dataproc Metastore con altre dai servizi Google Cloud, come il cluster Dataproc.
    2. (Facoltativo) Fai clic su Utilizza rete VPC condivisa e inserisci ID progetto e Nome rete VPC.

    3. (Facoltativo) Fai clic su Rendi i servizi accessibili in più subnet VPC e seleziona le subnet. Puoi specificare fino a cinque subnet.

    4. Fai clic su Fine.

    Integrazione dei metadati

    Periodo di manutenzione

    • (Facoltativo) Seleziona il Giorno della settimana e l'Ora del giorno per periodo di manutenzione.

      Per ulteriori informazioni, consulta la sezione Periodi di manutenzione.

    Sicurezza

    1. (Facoltativo) Attiva Kerberos.

      1. Per attivare Kerberos, fai clic sul pulsante di attivazione/disattivazione.
      2. Seleziona o inserisci il tuo ID risorsa secret.
      3. Scegli di utilizzare la versione del secret più recente o selezionane una meno recente uno da utilizzare.
      4. Inserisci l'entità Kerberos.

        Questa è l'entità allocata per questo Dataproc Metastore completamente gestito di Google Cloud.

      5. Vai al file di configurazione krb5.

    2. (Facoltativo) Scegli un tipo di crittografia.

      • L'opzione selezionata per impostazione predefinita è Chiave di crittografia gestita da Google.

      • Per selezionare una chiave gestita dal cliente, fai clic su Utilizza una chiave gestita dal cliente chiave di crittografia (CMEK).

        Per saperne di più, consulta Utilizzo delle chiavi di crittografia gestite dal cliente.

    Override della configurazione di Metastore

    • (Facoltativo) Per applicare una mappatura a Hive Metastore, fai clic su + Add Overrides (+ Aggiungi override).

    Configurazione versione ausiliaria

    • (Facoltativo) Per aggiungere una configurazione della versione ausiliaria, fai clic su Abilita.

      Per ulteriori informazioni, vedi Versioni ausiliarie.

    Tipo di database

    • (Facoltativo) Scegli un tipo di database.

      Per Tipo di database, seleziona MySQL o Spanner. MySQL è predefinito del database.

      Per saperne di più sulla scelta di un tipo di database specifico, consulta Tipi di database.

    Etichette

    • (Facoltativo) Per aggiungere o rimuovere le etichette facoltative che descrivono i metadati, Fai clic su + Aggiungi etichette.

Avviare il servizio

Per creare e avviare il servizio, fai clic su Invia.

Il nuovo servizio metastore viene visualizzato in Dataproc Metastore . Lo stato mostra Creazione in corso finché il servizio non è pronto per l'uso. Quando è pronto, lo stato diventa Attivo. Il provisioning del servizio potrebbe richiedere alcuni minuti.

Interfaccia a riga di comando gcloud

  1. Per creare un metastore, esegui questo comando gcloud metastore services create:

    gcloud metastore services create SERVICE \
      --location=LOCATION \
      --instance-size=INSTANCE_SIZE \
      --scaling-factor=SCALING_FACTOR \
      --port=PORT \
      --tier=TIER \
      --endpoint-protocol=ENDPOINT_PROTOCOL \
      --database-type=DATABASE_TYPE \
      --hive-metastore-version=HIVE_METASTORE_VERSION \
      --data-catalog-sync=DATA_CATALOG_SYNC \
      --release-channel=RELEASE_CHANNEL \
      --hive-metastore-configs=METADATA_OVERRIDE \
      --labels=LABELS \
      --auxiliary-versions=AUXILIARY_VERSION \
      --network=NETWORK \
      --consumer-subnetworks="projects/PROJECT_ID/regions/LOCATION/subnetworks/SUBNET1, projects/PROJECT_ID/regions/LOCATION/subnetworks/SUBNET2" \
      --kerberos-principal=KERBEROS_PRINCIPAL \
      --krb5-config=KRB5_CONFIG \
      --keytab=CLOUD_SECRET \
      --encryption-kms-key=KMS_KEY

    Sostituisci quanto segue:

    Impostazioni servizio:

    • SERVICE: il nome del tuo nuovo Servizio Dataproc Metastore. del tuo servizio Dataproc Metastore. Ad esempio, 0.1. Se specifichi un valore per SCALING_FACTOR, non specificare un valore per INSTANCE_SIZE.
    • LOCATION: la regione Google Cloud che ti interessa in cui creare Dataproc Metastore. Puoi anche impostare una località predefinita.
    • PORT: (Facoltativo) la porta TCP che usi usi degli endpoint Thrift. Se non viene configurato, viene utilizzata la porta 9083. Se scegli di utilizzare un endpoint gRPC, il numero di porta verrà cambia in 443.
    • TIER: facoltativo per Dataproc Metastore 1: Il livello di servizio del tuo nuovo completamente gestito di Google Cloud. Se non viene configurato, viene utilizzato il valore Developer.
    • ENDPOINT_PROTOCOL: (Facoltativo) Scegli il protocollo dell'endpoint per il tuo servizio.
    • DATABASE_TYPE: (Facoltativo) Scegli il tipo di database per il tuo servizio. Per saperne di più sulla scelta di un tipo di database specifico, consulta Tipi di database.
    • DATA_CATALOG_SYNC. (Facoltativo) Attiva il Funzionalità di sincronizzazione di Data Catalog.
    • HIVE_METASTORE_VERSION: Facoltativo: The Hive della versione metastore che desideri utilizzare con il tuo servizio. Ad esempio: 3.1.2. Se non viene configurato, viene utilizzata l'ultima versione di Hive.
    • RELEASE_CHANNEL: facoltativo: il canale di rilascio del servizio. Se non viene configurato, viene utilizzato il valore Stable.
    • METADATA_OVERRIDE: facoltativo: il metastore Hive configura le configurazioni di override che vuoi applicare al servizio. Utilizza un elenco separato da virgole nel seguente formato k1=v1,k2=v2,k3=v3.
    • LABELS: Facoltativo: coppie chiave-valore da aggiungere metadati aggiuntivi al tuo servizio. Utilizza un elenco separato da virgole nel seguente formato k1=v1,k2=v2,k3=v3. Dataproc Metastore
    • AUXILIARY_VERSION: (Facoltativo) Attiva servizi ausiliari versions. Per ulteriori informazioni, vedi Versioni ausiliarie.

    Impostazioni di scalabilità:

    • INSTANCE_SIZE: facoltativo per Dataproc Metastore 2: le dimensioni dell'istanza Dataproc Metastore in più regioni. Ad esempio: small, medium o large. Se specifichi un valore per INSTANCE_SIZE, non specificare un valore per SCALING_FACTOR.
    • SCALING_FACTOR: facoltativo per Dataproc Metastore 2: il fattore di scalabilità del tuo servizio Dataproc Metastore. Ad esempio: 0.1. Se specifica un valore per SCALING_FACTOR, non specificare un valore per INSTANCE_SIZE

    Impostazioni di rete:

    • NETWORK: il nome della rete VPC che ti stai connettendo al servizio. Se non viene configurato, viene utilizzato il valore default.

      Se utilizzi una rete VPC che appartiene a un un progetto diverso da quello del tuo servizio, devi fornire devi specificare un nome risorsa relativo. Ad esempio: projects/HOST_PROJECT/global/networks/NETWORK_ID.

    • SUBNET1 e SUBNET2: (Facoltativo) Un elenco di subnet che possono accedere al servizio. Puoi utilizzare l'ID, l'URL completo o il nome relativo della subnet. Puoi specificare fino a cinque subnet.

    Impostazioni Kerberos:

    • KERBEROS_PRINCIPAL: facoltativo: un Kerberos esistente sia nella keytab sia nel KDC. Un tipico nel formato "primary/instance@REALM", ma non esistono formato esatto.
    • KRB5_CONFIG: facoltativo, il file krb5.config specifica il KDC e le informazioni di area di autenticazione Kerberos, che includono posizioni dei KDC e valori predefiniti per area di autenticazione e Kerberos diverse applicazioni.
    • CLOUD_SECRET: facoltativo: la risorsa relativa nome di un Secret Manager del secret.
    • KMS_KEY: facoltativo: si riferisce alla risorsa chiave ID.
  2. Verifica che la creazione sia riuscita.

REST

Segui le istruzioni dell'API per creare un servizio utilizzando Explorer API.

Imposta un override della configurazione del metastore Hive per Dataproc Metastore

Se la directory del warehouse Apache Hive si trova su Cloud Storage, devi impostare della configurazione del metastore. Con questo override, il data warehouse personalizzato viene impostato come la directory di warehouse predefinita per il servizio Dataproc Metastore.

Prima di impostare l'override, assicurati che il tuo Dataproc Metastore dispone delle autorizzazioni di lettura e scrittura degli oggetti per accedere alla directory del warehouse. Per maggiori informazioni, consulta la directory del warehouse Hive.

Le seguenti istruzioni mostrano come impostare un override della configurazione di Hive Metastore per un nuovo servizio Dataproc Metastore.

Console

  1. Nella console Google Cloud, apri la pagina Dataproc Metastore:

    Apri Dataproc Metastore

  2. Nella barra di navigazione, fai clic su +Crea.

  3. In Override della configurazione di Metastore, inserisci i seguenti valori:

    • Chiave: hive.metastore.warehouse.dir.
    • Valore: la posizione di Cloud Storage della directory del warehouse. Ad esempio: gs://my-bucket/path/to/location.
  4. Configura le restanti opzioni di servizio in base alle tue esigenze oppure utilizza i valori predefiniti forniti.

  5. Fai clic su Invia.

    Torna alla pagina Dataproc Metastore e per verificare che il servizio sia stato creato correttamente.

Interfaccia a riga di comando gcloud

  1. Per creare un servizio Dataproc Metastore con un override Hive, esegui questo gcloud metastore services create :

    gcloud metastore services create SERVICE \
      --location=LOCATION \
      --hive-metastore-configs="hive.metastore.warehouse.dir=CUSTOMER_DIR"
    

    Sostituisci quanto segue:

    • SERVICE: il nome del tuo nuovo Servizio Dataproc Metastore.
    • LOCATION: la regione Google Cloud che ti interessa in cui creare Dataproc Metastore. Puoi anche impostare posizione predefinita.
    • CUSTOMER_DIR: la località di Cloud Storage nella directory del warehouse. Ad esempio: gs://my-bucket/path/to/location.
  2. Verifica che la creazione sia riuscita.

Crea Dataproc Metastore con scalabilità automatica

Dataproc Metastore 2 supporta la scalabilità automatica. Se attivi la scalabilità automatica, puoi impostare un fattore di scala minimo e un fattore di scala massimo. Trascorso questo periodo, impostato, il servizio aumenta o diminuisce automaticamente il fattore di scalabilità necessaria per eseguire i tuoi carichi di lavoro.

Considerazioni sulla scalabilità automatica

  • I fattori di scalabilità automatica e di scalabilità sono opzioni che si escludono a vicenda. Ad esempio: Se attivi la scalabilità automatica, non puoi impostare manualmente un fattore di scalabilità o una dimensione.
  • La scalabilità automatica è disponibile solo per Dataproc Metastore a regione singola di Compute Engine.
  • Quando la scalabilità automatica è abilitata, le impostazioni esistenti dei fattori di scalabilità vengono cancellate.
  • Quando la scalabilità automatica è disabilitata:
    • Le impostazioni di scalabilità automatica esistenti sono state cancellate.
    • Il fattore di scalabilità è impostato sull'ultimo autoscaling_factor configurato sul servizio.
  • I fattori di scalabilità automatica minimo e massimo sono facoltativi. Se non viene impostato, il parametro i valori predefiniti sono rispettivamente 0.1 e 6.

Scegli una delle seguenti schede per scoprire come creare un Dataproc Metastore servizio 2 con scalabilità automatica abilitata.

Console

  1. Nella console Google Cloud, vai a Dataproc Metastore .

    Vai a Dataproc Metastore

  2. Nella barra di navigazione, fai clic su +Crea.

    Si apre la finestra di dialogo Crea servizio Metastore.

  3. Seleziona Dataproc Metastore 2.

  4. Nella sezione Prezzi e capacità, seleziona Enterprise - Regione singola

  5. In Dimensioni istanza, fai clic su Abilita scalabilità automatica.

  6. In Dimensioni istanza, utilizza il cursore per scegliere un'istanza minima e massima. dimensioni.

  7. Per creare e avviare il servizio, fai clic su Invia.

    Il nuovo servizio metastore viene visualizzato in Dataproc Metastore . Lo stato mostra Creazione in corso finché il servizio non è pronto per l'uso. Quando è pronto, lo stato diventa Attivo. Il provisioning del servizio potrebbe richiedere alcuni minuti.

REST

curl -X POST -s -i -H "Authorization: Bearer $(gcloud auth print-access-token)" \
-d '{"scaling_config":{"autoscaling_config":{"autoscaling_enabled": true,"limit_config":{"max_scaling_factor":MAX_SCALING_FACTOR,"min_scaling_factor": MIN_SCALING_FACTOR}}}}' \
-H "Content-Type:application/json" \
https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/services?service_id=SERVICE_ID

Sostituisci quanto segue:

  • MIN_INSTANCES Facoltativo: il numero minimo di istanze per la configurazione della scalabilità automatica. Se questi valori non sono specificati, viene utilizzato un valore predefinito di 0.1.
  • MAX_INSTANCESFacoltativo: il numero massimo di istanze per la configurazione della scalabilità automatica. Se questi valori non sono specificati, viene utilizzato un valore predefinito di 6.

Crea un servizio Dataproc Metastore multiregionale

Per creare un Dataproc Metastore in più regioni, consulta Configura un servizio Dataproc Metastore in più regioni.

Crea un servizio Dataproc Metastore utilizzando un VPC condiviso

Un VPC condiviso consente di connettere Dataproc Metastore da più progetti a una rete VPC comune.

Per creare un servizio Dataproc Metastore configurato con un VPC condiviso, consulta Creare un servizio utilizzando le impostazioni avanzate.

Considerazioni

  • Le reti VPC non sono rilevanti per i servizi Dataproc Metastore e configurato con il protocollo endpoint gRPC.

  • Per i servizi Dataproc Metastore configurati con l'endpoint Thrift assicurati che il tuo servizio Dataproc Metastore e il protocollo Un cluster Dataproc a cui è collegato utilizza lo stesso VPC condiviso in ogni rete.

  • Per i servizi Dataproc Metastore configurati con l'endpoint Thrift e Private Service Connect, assicurati di utilizzare le subnet dalla rete VPC condiviso.

Ruoli IAM richiesti per le reti VPC condiviso

Creazione di un servizio Dataproc Metastore con un VPC accessibile in una rete appartenente a un altro progetto, devi concedere roles/metastore.serviceAgent al progetto Agente di servizio Dataproc Metastore (service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) nel criterio IAM del progetto di rete.

gcloud projects add-iam-policy-binding NETWORK_PROJECT_ID \
   --role "roles/metastore.serviceAgent" \
   --member "serviceAccount:service-SERVICE_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com"

Risolvere i problemi comuni

Ecco alcuni problemi comuni:

  • Limitazione del peering VPC. Prima di creare un metastore, non impostare Vincolo dei criteri dell'organizzazione per limitare il peering VPC o la creazione del metastore non riesce. Per ulteriori informazioni sull'impostazione delle configurazioni VPC corrette, Vedi La creazione del servizio non riesce a causa di un vincolo che limita il VPC e il peering.

  • Problemi con le reti VPC. Quando crei un metastore, la rete VPC potrebbero esaurire gli indirizzi RFC 1918 disponibili richiesti dalla Dataproc Metastore. Per ulteriori informazioni per risolvere il problema, consulta l'articolo L'intervallo IP allocato è esausto.

Passaggi successivi