En esta página se explica cómo exportar metadatos de Dataproc Metastore.
La función de metadatos de exportación te permite guardar tus metadatos en un formato de almacenamiento portátil.
Después de exportar los datos, puedes importar los metadatos en otro servicio de Dataproc Metastore o en un almacén de metadatos de Hive (HMS) autogestionado.
Acerca de la exportación de metadatos
Cuando exportas metadatos de Dataproc Metastore, el servicio almacena los datos en uno de los siguientes formatos de archivo:
- Conjunto de archivos Avro almacenados en una carpeta.
- Un solo archivo de volcado de MySQL almacenado en una carpeta de Cloud Storage.
Avro
Las exportaciones basadas en Avro solo se admiten en las versiones 2.3.6 y 3.1.2 de Hive. Cuando exportas archivos Avro, Dataproc Metastore crea un archivo <table-name>.avro
para cada tabla de tu base de datos.
Para exportar archivos Avro, tu servicio Dataproc Metastore puede usar el tipo de base de datos MySQL o Spanner.
MySQL
Las exportaciones basadas en MySQL son compatibles con todas las versiones de Hive. Cuando exportas archivos MySQL, Dataproc Metastore crea un único archivo SQL que contiene toda la información de tus tablas.
Para exportar archivos MySQL, tu servicio Dataproc Metastore debe usar el tipo de base de datos MySQL. El tipo de base de datos de Spanner no admite importaciones de MySQL.
Antes de empezar
- Habilita Dataproc Metastore en tu proyecto.
- Conocer los requisitos de red específicos de tu proyecto.
- Crea un servicio de Dataproc Metastore.
Roles obligatorios
Para obtener los permisos que necesitas para exportar metadatos a Dataproc Metastore, pide a tu administrador que te conceda los siguientes roles de gestión de identidades y accesos:
-
Para exportar metadatos, puedes hacer lo siguiente:
-
Editor de Dataproc Metastore (
roles/metastore.editor
) en el servicio Dataproc Metastore -
Administrador de Dataproc Metastore (
roles/metastore.admin
) en el servicio de Dataproc Metastore -
Operador de metadatos de Dataproc Metastore (
roles/metastore.metadataOperator
) en el servicio Dataproc Metastore
-
Editor de Dataproc Metastore (
-
Para MySQL y Avro, sigue estos pasos para usar el objeto de Cloud Storage para la exportación:
Asigna a tu cuenta de usuario y al agente de servicio de Dataproc Metastore el rol Creador de Storage (
roles/storage.objectCreator
). en el segmento de Cloud Storage.
Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.
Estos roles predefinidos contienen los permisos necesarios para exportar metadatos a Dataproc Metastore. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:
Permisos obligatorios
Para exportar metadatos a Dataproc Metastore, se necesitan los siguientes permisos:
-
Para exportar metadatos, siga estos pasos:
metastore.services.export
en el servicio del almacén de metadatos -
En el caso de MySQL y Avro, para usar el objeto de Cloud Storage en la exportación, concede a tu cuenta de usuario y al agente de servicio de Dataproc Metastore:
storage.objects.create
en el segmento de Cloud Storage
También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.
Para obtener más información sobre roles y permisos específicos de Dataproc Metastore, consulta la información general sobre la gestión de identidades y accesos de Dataproc Metastore.Exportar metadatos
Antes de exportar los metadatos, ten en cuenta lo siguiente:
- Mientras se esté ejecutando una exportación, no podrás actualizar un servicio de Dataproc Metastore (por ejemplo, cambiar los ajustes de configuración). Sin embargo, puedes seguir usándolo para operaciones normales, como acceder a sus metadatos desde clústeres de Dataproc o autogestionados adjuntos.
- La función de exportación de metadatos solo exporta metadatos. Los datos creados por Apache Hive en tablas internas no se replican en la exportación.
Para exportar metadatos de un servicio de Dataproc Metastore, siga estos pasos.
Consola
En la Google Cloud consola, abre la página Dataproc Metastore:
En la página Dataproc Metastore, haga clic en el nombre del servicio del que quiera exportar metadatos.
Se abrirá la página Detalles del servicio.
Página de detalles del servicio de Dataproc Metastore En la barra de navegación, haz clic en Exportar.
Se abrirá la página Exportar metadatos.
En la sección Destino, elija MySQL o Avro.
En el campo URI de destino, haz clic en Examinar y selecciona el URI de Cloud Storage al que quieras exportar los archivos.
También puedes introducir la ubicación del contenedor en el campo de texto correspondiente. Utiliza el siguiente formato:
bucket/object
obucket/folder/object
.Para iniciar la exportación, haz clic en Enviar.
Cuando termine, la exportación aparecerá en una tabla de la página Detalles del servicio, en la pestaña Importar/Exportar.
Cuando se completa la exportación, Dataproc Metastore vuelve automáticamente al estado activo, independientemente de si la exportación se ha realizado correctamente o no.
CLI de gcloud
Para exportar metadatos de un servicio, ejecuta el siguiente comando de
gcloud metastore services export gcs
:gcloud metastore services export gcs SERVICE \ --location=LOCATION \ --destination-folder=gs://bucket-name/path/to/folder \ --dump-type=DUMP_TYPE
Haz los cambios siguientes:
SERVICE
: el nombre de tu servicio de Dataproc Metastore.LOCATION
: la Google Cloud región en la que se encuentra tu servicio de Dataproc Metastore.bucket-name/path/to/folder
: la carpeta de destino de Cloud Storage en la que quieres almacenar la exportación.DUMP_TYPE
: el tipo de volcado de base de datos que se va a generar en la exportación. Los valores aceptados sonmysql
yavro
. El valor predeterminado esmysql
.
Verifica que la exportación se haya realizado correctamente.
Cuando se completa la exportación, Dataproc Metastore vuelve automáticamente al estado activo, independientemente de si la exportación se ha realizado correctamente o no.
REST
Sigue las instrucciones de la API para exportar metadatos a un servicio mediante el Explorador de APIs.
Cuando se completa la exportación, el servicio vuelve automáticamente al estado activo, independientemente de si se ha completado correctamente o no.
Ver historial de exportación
Para ver el historial de exportación de un servicio Dataproc Metastore en la consola, sigue estos pasos:Google Cloud
- En la Google Cloud consola, abre la página Dataproc Metastore.
En la barra de navegación, haga clic en Importar/Exportar.
Tu historial de exportaciones aparecerá en la tabla Historial de exportaciones.
En el historial se muestran las últimas 25 exportaciones.
Si eliminas un servicio de Dataproc Metastore, también se eliminará todo el historial de exportaciones asociado.
Solucionar problemas frecuentes
Estos son algunos de los problemas habituales:
- El agente de servicio o la cuenta de usuario no tienen los permisos necesarios.
- El trabajo falla porque el archivo de la base de datos es demasiado grande.
Para obtener más ayuda sobre cómo solucionar problemas habituales, consulta Escenarios de errores de importación y exportación.