Esegui il deployment di un servizio Dataproc Metastore
Questa pagina mostra come creare un servizio Dataproc Metastore e connettersi da un cluster Dataproc. Dopodiché, esegui SSH nel cluster, lancia un'istanza di Apache Hive ed esegui alcune query di base.
Dataproc Metastore fornisce un metastore Hive (HMS) completamente compatibile, che è lo standard consolidato nell'ecosistema big data open source per la gestione dei metadati tecnici. Questo servizio ti aiuta a gestire i metadati dei tuoi data lake e fornisce l'interoperabilità tra i vari strumenti di elaborazione dati che utilizzi.
Per seguire le indicazioni dettagliate per questa attività direttamente nella console Google Cloud, fai clic su Procedura guidata:
Prima di iniziare
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Dataproc Metastore, Dataproc APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Dataproc Metastore, Dataproc APIs.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per creare un Dataproc Metastore e un cluster Dataproc, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Per concedere l'accesso completo a tutte le risorse Dataproc Metastore, inclusa l'impostazione delle autorizzazioni IAM:
(
roles/metastore.admin
) all'account utente o all'account di servizio -
Per concedere il controllo completo delle risorse di Dataproc Metastore:
Dataproc Metastore Editor (
roles/metastore.editor
) nell'account utente o nell'account di servizio -
Per creare un cluster Dataproc:
(
roles/dataproc.worker
) nell'account di servizio
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per creare un Dataproc Metastore e un cluster Dataproc. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
Per creare un Dataproc Metastore e un cluster Dataproc sono necessarie le seguenti autorizzazioni:
-
Per creare un servizio Dataproc Metastore:
metastore.services.create
nell'account utente o nell'account di servizio -
Per creare un cluster Dataproc:
Dataproc worker (
sul account di servizioroles/dataproc.worker
)
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Per ulteriori informazioni su ruoli e autorizzazioni specifici di Dataproc Metastore, consulta la panoramica di IAM di Dataproc Metastore.Crea un servizio Dataproc Metastore
Le istruzioni riportate di seguito mostrano come creare un servizio Dataproc Metastore di base utilizzando le impostazioni predefinite fornite.
Console
Nella console Google Cloud, vai alla pagina Dataproc Metastore.
Nel menu di navigazione, fai clic su +Crea.
Si apre la finestra di dialogo Crea servizio Metastore.
Seleziona Dataproc Metastore 2.
Nel campo Nome servizio, inserisci
example-service
.Nel campo Località dei dati, seleziona
us-central1
.Per le restanti opzioni di configurazione del servizio, utilizza quelle predefinite.
Per creare e avviare il servizio, fai clic su Invia.
Il nuovo servizio metastore viene visualizzato nella pagina Dataproc Metastore. Lo stato visualizzato è Creazione finché il servizio non è pronto per l'uso. Quando è pronto, lo stato diventa Attivo. Il provisioning del servizio potrebbe richiedere alcuni minuti.
Lo screenshot seguente mostra un esempio della pagina Crea servizio che utilizza alcune delle impostazioni predefinite fornite.
Interfaccia a riga di comando gcloud
Per creare un servizio metastore utilizzando i valori predefiniti forniti,
esegui il seguente comando gcloud metastore services create
:
gcloud metastore services create example-service \ --location=us-central1 \ --instance-size=MEDIUM
Questo comando crea un servizio denominato example-service
nella regione predefinita (us-central1
) e con la dimensione dell'istanza predefinita (MEDIUM
).
REST
Segui le istruzioni dell'API per creare un servizio utilizzando Explorer API.
Crea un cluster Dataproc e connettiti a Dataproc Metastore
Successivamente, crea un cluster Dataproc e connettiti al metastore dal cluster. In seguito, il cluster utilizza il servizio metastore come HMS. Il cluster creato qui utilizza le impostazioni predefinite fornite.
Console
Nella console Google Cloud, vai alla pagina Cluster Dataproc.
Nella barra di navigazione, seleziona +Crea cluster.
Viene visualizzata la finestra di dialogo Crea un cluster, che offre più opzioni di infrastruttura tra cui scegliere.
Nella riga Cluster su Compute Engine, seleziona Crea.
Viene visualizzata la pagina Creare un cluster Dataproc su Compute Engine.
Nel campo Nome cluster, inserisci
example-cluster
.Nei menu Regione e Zona, seleziona
us-central1
.Per le restanti opzioni di Configura cluster, utilizza i valori predefiniti forniti.
Nel menu di navigazione, fai clic sulla scheda Personalizza cluster (facoltativo).
Nella sezione Dataproc Metastore, seleziona il servizio metastore creato in precedenza.
Se hai seguito questo tutorial così com'è, il nome è
example-service
.Per le restanti opzioni di configurazione del servizio, utilizza i valori predefiniti forniti.
Per creare il cluster, fai clic su Crea.
Il nuovo cluster viene visualizzato nell'elenco Cluster. Lo stato del cluster viene visualizzato come Provisioning finché il cluster non è pronto per essere utilizzato. Quando è pronto, lo stato diventa Attivo. Il provisioning del cluster potrebbe richiedere un paio di minuti.
Interfaccia a riga di comando gcloud
Per creare un cluster utilizzando le impostazioni predefinite fornite, esegui il seguente comando gcloud dataproc clusters create
:
gcloud dataproc clusters create example-cluster \ --dataproc-metastore=projects/PROJECT_ID/locations/us-central1/services/example-service \ --region=us-central1
Sostituisci PROJECT_ID
con l'ID del progetto in cui hai creato il servizio Dataproc Metastore.
REST
Segui le istruzioni dell'API per creare un cluster utilizzando Explorer API.
Connettiti ad Apache Hive con un cluster Dataproc
I passaggi successivi mostrano come eseguire alcuni comandi di esempio in Apache Hive per creare un database e una tabella.
A questo punto, apri una sessione SSH sul cluster Dataproc e avvia una sessione Hive.
- Nella console Google Cloud, vai alla pagina Istanze VM.
- Nell'elenco delle istanze della macchina virtuale, fai clic su SSH accanto a
example-cluster
.
Nella home directory del nodo si apre una finestra del browser con un output simile al seguente:
Connected, host fingerprint: ssh-rsa ...
Linux cluster-1-m 3.16.0-0.bpo.4-amd64 ...
...
example-cluster@cluster-1-m:~$
Per avviare Hive e creare un database e una tabella, esegui i seguenti comandi nella sessione SSH:
Avvia Hive.
hive
Crea un database denominato
myDatabase
.create database myDatabase;
Mostra il database che hai creato.
show databases;
Utilizza il database che hai creato.
use myDatabase;
Crea una tabella denominata
myTable
.create table myTable(id int,name string);
Elenca le tabelle in
myDatabase
.show tables;
Descrivi lo schema della tabella che hai creato.
desc MyTable;
L'esecuzione di questi comandi mostra un output simile al seguente:
$hive
hive> show databases;
OK
default
hive> create database myDatabase;
OK
hive> use myDatabase;
OK
hive> create table myTable(id int,name string);
OK
hive> show tables;
OK
myTable
hive> desc myTable;
OK
id int
name string
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
- In the Google Cloud console, go to the Manage resources page.
- If the project that you plan to delete is attached to an organization, expand the Organization list in the Name column.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
In alternativa, puoi eliminare le risorse utilizzate in questo tutorial:
Elimina il servizio Dataproc Metastore.
Console
Nella console Google Cloud, apri la pagina Dataproc Metastore:
Nell'elenco dei servizi, seleziona
example-service
.Nella barra di navigazione, fai clic su Elimina.
Viene visualizzata la finestra di dialogo Elimina servizio.
Nella finestra di dialogo, fai clic su Elimina.
Il servizio non è più visualizzato nell'elenco dei servizi.
Interfaccia a riga di comando gcloud
Per eliminare il servizio, esegui il seguente comando
gcloud metastore services delete
.gcloud metastore services delete example-service \ --location=us-central1
REST
Segui le istruzioni dell'API per eliminare un servizio utilizzando Explorer API.
Tutte le eliminazioni vengono eseguite immediatamente.
Elimina il bucket Cloud Storage per il servizio Dataproc Metastore.
Elimina il cluster Dataproc che utilizzava il servizio Dataproc Metastore.