Migra un metastore de MySQL autoadministrado a Dataproc Metastore
En esta página, se muestra cómo migrar tu almacén de metadatos de MySQL externo y administrado de forma independiente a Dataproc Metastore. Para ello, crea un archivo de volcado de MySQL y, luego, importa los metadatos a un servicio existente de Dataproc Metastore.
Antes de comenzar
- 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.
-
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 API.
Funciones requeridas
Para obtener los permisos que necesitas para crear un metastore de Dataproc e importar un metastore de MYSQL, pídele a tu administrador que te otorgue los siguientes roles de IAM:
-
Para crear un servicio y, luego, importar metadatos, haz lo siguiente:
-
Editor de Dataproc Metastore (
roles/metastore.editor
) en el proyecto -
Administrador de Dataproc Metastore (
roles/metastore.admin
) en el proyecto.
-
Editor de Dataproc Metastore (
-
Para usar el objeto de Cloud Storage (archivo de volcado de SQL) para la importación, sigue estos pasos:
-
Visualizador de objetos de almacenamiento (
roles/storage.objectViewer
) en el agente de servicio de Dataproc Metastore Por ejemplo,service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com
. -
Visualizador de objetos de almacenamiento (
roles/storage.objectViewer
) en la cuenta de usuario
-
Visualizador de objetos de almacenamiento (
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para crear un metastore de Dataproc y para importar un metastore de MYSQL. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para crear un Dataproc Metastore y para importar un metastore de MYSQL:
-
Para crear un servicio, haz lo siguiente:
metastore.services.create
en el proyecto. -
Para importar metadatos, usa
metastore.imports.create
en el proyecto. -
Para usar el objeto de Cloud Storage (archivo de volcado de SQL) para la importación, sigue estos pasos:
-
storage.objects.get
en el agente de servicio de Dataproc Metastore. Por ejemplo,service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com
-
storage.objects.get
en la cuenta de usuario.
-
También puedes obtener estos permisos con roles personalizados o con otros roles predefinidos.
Para obtener más información sobre los roles y permisos específicos de Dataproc Metastore, consulta Cómo administrar el acceso de Dataproc con IAM.Crea un servicio de Dataproc Metastore
En las siguientes instrucciones, se muestra cómo crear un servicio de Dataproc Metastore al que puedes migrar tu archivo de volcado de SQL.
Console
En la consola de Google Cloud, abre la página Crear servicio:
En el campo Nombre del servicio, ingresa
example-service
.Selecciona la Ubicación de los datos. Consulta Ubicaciones de Cloud si necesitas información para seleccionar una región.
Para otras opciones de configuración del servicio, usa los valores predeterminados proporcionados.
Para crear y, luego, iniciar el servicio, haz clic en el botón Enviar.
El nuevo servicio aparecerá en la lista de servicios.
gcloud
Ejecuta el siguiente comando gcloud metastore services create
para crear un servicio:
gcloud metastore services create example-service \ --location=LOCATION
Reemplaza LOCATION
por la región de Compute Engine en la que planeas crear el servicio. Asegúrate de que Dataproc Metastore esté disponible en la región.
REST
Sigue las instrucciones de la API para crear un servicio mediante el Explorador de API.
Prepárate para la migración
Ahora debes preparar los metadatos almacenados en tu base de datos del almacén de metadatos de Hive para importar creando un archivo de volcado de MySQL y colocándolo en un bucket de Cloud Storage.
Consulta Prepara los archivos de importación antes de la importación para conocer los pasos que debes seguir para prepararte para la migración.
Importa los metadatos
Ahora que preparaste el archivo de volcado, impórtalo a tu servicio de Dataproc Metastore.
Consulta Cómo importar los archivos a Dataproc Metastore para obtener los pasos para importar los metadatos a tu servicio de example-service
.
Crea y conecta un clúster de Dataproc
Después de importar tus metadatos al servicio example-service
de Dataproc Metastore, crea y conecta un clúster de Dataproc que use el servicio como su almacén de metadatos de Hive.
Limpia
Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.
- 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.
Como alternativa, puedes borrar los recursos que se usan en este instructivo de la siguiente manera:
Borra el servicio de Dataproc Metastore.
Console
En la consola de Google Cloud, abre la página Dataproc Metastore:
A la izquierda del nombre del servicio, marca la casilla para seleccionar
example-service
.En la parte superior de la página Dataproc Metastore, haz clic en Borrar para borrar el servicio.
En el cuadro de diálogo, haz clic en Borrar para confirmar la eliminación.
Tu servicio ya no aparece en la lista de servicios.
gcloud
Ejecuta el siguiente comando
gcloud metastore services delete
para borrar un servicio:gcloud metastore services delete example-service \ --location=LOCATION
Reemplaza
LOCATION
por la región de Compute Engine en la que creaste el servicio.REST
Sigue las instrucciones de la API para borrar un servicio mediante el Explorador de API.
Todas las eliminaciones se completa de forma exitosa de inmediato.
Borra el bucket de Cloud Storage para el servicio de Dataproc Metastore.