Quando crei un servizio Dataproc Metastore, devi scegliere se utilizzare il tipo di database MySQL o il tipo di database Spanner.
Questa scelta influisce sulle funzionalità che puoi integrare e utilizzare con il servizio Dataproc Metastore. È importante notare che non puoi aggiornare il tipo di database dopo aver creato un servizio Dataproc Metastore. Assicurati di scegliere il tipo di database appropriato per le tue esigenze.
Questa pagina spiega le differenze tra questi tipi di database e come sceglierne uno per il tuo servizio.
Differenze tra MySQL e Spanner
MySQL
Il tipo di database MySQL di Dataproc Metastore è un'implementazione di Cloud SQL. Tieni presente quanto segue quando utilizzi un database MySQL:
- MySQL è il tipo di database predefinito per la creazione di un Dataproc Metastore.
- MySQL è supportato da tutte le versioni di Hive.
- MySQL supporta tutte le funzionalità di Dataproc Metastore.
- MySQL supporta la crittografia di Dataproc Metastore, come l'utilizzo e le chiavi di crittografia gestite dal cliente (CMEK).
Spanner
Il tipo di database Spanner Dataproc Metastore è un'implementazione di Spanner. Tieni presente quanto segue quando utilizzi un database Spanner:
- Spanner è supportato solo su Hive versioni 2.3.6 e 3.1.2.
- Spanner supporta solo le importazioni Avro.
Ulteriori dettagli
La tabella seguente fornisce ulteriori dettagli su queste differenze.
MySQL | Spanner | |
---|---|---|
Affidabilità (uptime) | SLO Cloud SQL 99,95%* | SLO di Spanner 99,99%* |
Periodi di manutenzione | Obbligatorio | Non obbligatoria |
Note:
- *Gli SLO di Cloud SQL e Spanner non si traducono direttamente negli SLO di Dataproc Metastore. Dataproc Metastore La selezione del tipo di database non influisce su Dataproc Metastore SLO.
- Non esiste alcuna differenza di prezzo tra i due tipi di database.
Prima di iniziare
- Attiva Dataproc Metastore nel tuo progetto.
- Comprendi i requisiti di networking specifici del tuo progetto.
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:
-
Concede il controllo completo delle risorse Dataproc Metastore (
roles/metastore.editor
) -
Concedi l'accesso completo a tutte le risorse Dataproc Metastore, inclusa l'amministrazione dei criteri IAM (
roles/metastore.admin
)
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene
metastore.services.create
autorizzazione,
che è obbligatorio
per creare un Dataproc Metastore.
Potresti anche riuscire a ottenere questa autorizzazione con ruoli personalizzati altri ruoli predefiniti.
Per ulteriori informazioni su ruoli e ruoli Dataproc Metastore specifici autorizzazioni, consulta Gestire l'accesso a Dataproc con IAM.Scegli il tipo di database
Scegli il tipo di database quando crei per la prima volta Servizio Dataproc Metastore.
L'esempio seguente mostra una versione abbreviata dei passaggi da seguire per scegliere un tipo di database. Per istruzioni dettagliate, consulta Creare un servizio Dataproc Metastore.
Console
Nella console Google Cloud, apri la pagina Dataproc Metastore:
Nella barra di navigazione, fai clic su Crea.
Viene visualizzata la pagina Crea servizio.
Per Tipo di database, seleziona MySQL o Spanner.
MySQL è il tipo di database predefinito.
Scegli le configurazioni rimanenti per il servizio, se necessario.
Fai clic su Invia.
Interfaccia a riga di comando gcloud
Esegui il seguente comando
gcloud metastore services create
:gcloud metastore services create SERVICE_ID \ --location=LOCATION \ --database-type=DATABASE_TYPE; default="mysql"
Sostituisci quanto segue:
SERVICE_ID
: il nome o l'ID del tuo Servizio Dataproc Metastore.LOCATION
: la regione in cui Il servizio Dataproc Metastore risiede in.DATABASE_TYPE
: il tipo di database da impostare per il servizio Dataproc Metastore. I valori accettati includonomysql
espanner
. Il valore predefinito èmysql
.
Passaggi successivi
- Creare un servizio
- Aggiornare ed eliminare un servizio
- Archiviazione dei dati per le tabelle interne