Cuando creas un servicio de Dataproc Metastore, debes elegir si usar el tipo de base de datos de MySQL o el de Spanner.
Esta elección afecta las funciones que puedes integrar y usar con tu servicio de Dataproc Metastore. Es importante tener en cuenta que no puedes actualiza tu tipo de base de datos después de crear un Dataproc Metastore servicio. Asegúrate de elegir el tipo de base de datos adecuado para tus necesidades.
En esta página, se explican las diferencias entre estos tipos de bases de datos y cómo seleccionarlos para tu servicio.
Diferencias entre MySQL y Spanner
MySQL
El tipo de base de datos MySQL de Dataproc Metastore es una implementación de Cloud SQL. Ten en cuenta lo siguiente cuando uses una base de datos de MySQL:
- MySQL es el tipo de base de datos predeterminado cuando se crea un Dataproc Metastore.
- MySQL es compatible con todas las versiones de Hive.
- MySQL admite todas las funciones de Dataproc Metastore.
- MySQL admite la encriptación de Dataproc Metastore, como el uso claves de encriptación administradas por el cliente (CMEK).
Spanner
El tipo de base de datos de Spanner de Dataproc Metastore es una implementación de Spanner. Ten en cuenta lo siguiente cuando uses una base de datos de Spanner:
- Spanner solo es compatible con las versiones de Hive 2.3.6 y 3.1.2.
- Spanner solo admite importaciones de Avro.
Detalles adicionales
En la siguiente tabla, se proporcionan detalles adicionales sobre estas diferencias.
MySQL | Spanner | |
---|---|---|
Confiabilidad (tiempo de actividad) | SLO 99.95%de Cloud SQL* | SLO 99.99%de Spanner* |
Períodos de mantenimiento | Obligatorio | No requeridos |
Notas:
- * Los SLO de Cloud SQL y Spanner no se relacionan directamente se traducen en SLO de Dataproc Metastore. Dataproc Metastore Tu selección de tipo de base de datos no afecta los SLOs de Dataproc Metastore.
- No hay diferencia de precios entre los dos tipos de bases de datos.
Antes de comenzar
- Habilita Dataproc Metastore en tu proyecto.
- Comprende los requisitos de red específicos de tu proyecto.
Funciones requeridas
Para obtener el permiso que necesitas para crear un metastore de Dataproc, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto, según el principio de privilegio mínimo:
-
Otorga control total a los recursos de Dataproc Metastore (
roles/metastore.editor
) -
Otorgar acceso completo a todos los recursos de Dataproc Metastore, incluida la administración de políticas de IAM (
roles/metastore.admin
)
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Este rol predefinido contiene las
metastore.services.create
permiso,
que se requiere para
crear un Dataproc Metastore.
También puedes obtener este permiso con roles personalizados o con otros roles predefinidos.
Para obtener más información sobre roles específicos de Dataproc Metastore y permisos, consulta Administra el acceso a Dataproc con la IAM.Elige el tipo de base de datos
Eliges el tipo de base de datos cuando creas un servicio de Dataproc Metastore por primera vez.
En el siguiente ejemplo, se muestra una versión abreviada de los pasos que sigues. elegir un tipo de base de datos. Para obtener instrucciones paso a paso completas, consulta Crea un servicio de Dataproc Metastore.
Console
En la consola de Google Cloud, abre la página de Dataproc Metastore:
En la barra de navegación, haz clic en Crear.
Se abrirá la página Crear servicio.
En Tipo de base de datos, selecciona MySQL o Spanner.
MySQL es el tipo de base de datos predeterminado.
Elige las configuraciones restantes para tu servicio según sea necesario.
Haz clic en Enviar.
gcloud CLI
Ejecuta el siguiente comando
gcloud metastore services create
:gcloud metastore services create SERVICE_ID \ --location=LOCATION \ --database-type=DATABASE_TYPE; default="mysql"
Reemplaza lo siguiente:
SERVICE_ID
: Es el nombre o el ID de tu Servicio de Dataproc Metastore.LOCATION
: Es la región en la que reside tu servicio de Dataproc Metastore.DATABASE_TYPE
: Es el tipo de base de datos que deseas configurar para tu servicio de Dataproc Metastore. Los valores aceptados incluyenmysql
yspanner
. El valor predeterminado esmysql
.