En esta página, se explica cómo exportar metadatos desde Dataproc Metastore.
La función de exportación de metadatos te permite guardar los 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 Hive Metastore autoadministrado (HMS).
Información acerca de la exportación de metadatos
Cuando exportas metadatos desde Dataproc Metastore, el servicio almacena los datos en uno de los siguientes formatos de archivo:
- Un conjunto de archivos Avro almacenados en una carpeta.
- Un único archivo de volcado de MySQL almacenado en una carpeta de Cloud Storage.
Avro
Las exportaciones basadas en Avro solo son compatibles con 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 de 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 solo archivo SQL que contiene toda la información de tu tabla.
Para exportar archivos de MySQL, tu servicio de Dataproc Metastore debe usar el tipo de base de datos de MySQL. El tipo de base de datos de Spanner no admite importaciones de MySQL.
Antes de comenzar
- Habilita Dataproc Metastore en tu proyecto.
- Comprende los requisitos de herramientas de redes específicos de tu proyecto.
- Crea un servicio de Dataproc Metastore.
Funciones obligatorias
A fin de obtener los permisos que necesitas para exportar metadatos a Dataproc Metastore, pídele a tu administrador que te otorgue los siguientes roles de IAM:
-
Para exportar metadatos, realiza una de estas acciones:
-
Editor de Dataproc Metastore (
roles/metastore.editor
) en el servicio de 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 de Dataproc Metastore
-
Editor de Dataproc Metastore (
-
En el caso de MySQL y Avro, usa el objeto de Cloud Storage para exportar:
Otorga a tu cuenta de usuario y al agente de servicio de Dataproc Metastore el rol de creador de almacenamiento (
roles/storage.objectCreator
) en el bucket de Cloud Storage.
Si quieres obtener más información para otorgar funciones, consulta Administra el acceso.
Estas funciones predefinidas contienen los permisos necesarios para exportar metadatos a Dataproc Metastore. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:
Permisos necesarios
Se requieren los siguientes permisos para exportar metadatos a Dataproc Metastore:
-
Para exportar metadatos, usa
metastore.services.export
en el servicio de almacén de metadatos. -
En el caso de MySQL y Avro, si quieres usar el objeto de Cloud Storage para la exportación, otorga a tu cuenta de usuario y al agente de servicio de Dataproc Metastore:
storage.objects.create
en el bucket de Cloud Storage.
Es posible que también puedas obtener estos permisos con funciones personalizadas o con otras funciones predefinidas.
Para obtener más información sobre las funciones y los permisos específicos de Dataproc Metastore, consulta Descripción general de IAM de Dataproc Metastore.Exportar metadatos
Antes de exportar los metadatos, ten en cuenta las siguientes consideraciones:
- Mientras se ejecuta una exportación, no puedes actualizar un servicio de Dataproc Metastore, por ejemplo, si cambias la configuración. Sin embargo, aún puedes usarlo para operaciones normales, como usarlo para acceder a sus metadatos desde Dataproc conectado o clústeres autoadministrados.
- El atributo de exportación de metadatos solo exporta metadatos. Los datos que Apache Hive crea en tablas internas no se replican en la exportación.
Para exportar metadatos desde un servicio de Dataproc Metastore, sigue estos pasos.
Console
En la consola de Google Cloud, abre la página Dataproc Metastore:
En la página Dataproc Metastore, haz clic en el nombre del servicio desde el que deseas exportar los metadatos.
Se abrirá la página Detalles del servicio.
En la barra de navegación, haz clic en Exportar.
Se abrirá la página Exportar metadatos.
En la sección Destino, elige MySQL o Avro.
En el campo URI de destino, haz clic en Explorar y selecciona el URI de Cloud Storage en el que deseas exportar los archivos.
También puedes ingresar la ubicación de tu bucket en el campo de texto proporcionado. Usa el siguiente formato:
bucket/object
obucket/folder/object
.Para comenzar la exportación, haz clic en Enviar.
Cuando termines, la exportación aparecerá en una tabla en la página Detalles del servicio en la pestaña Importar/Exportar.
Cuando se completa la exportación, Dataproc Metastore vuelve de forma automática al estado activo, sin importar si la exportación se realizó correctamente o no.
CLI de gcloud
Para exportar metadatos desde un servicio, ejecuta el siguiente comando
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
Reemplaza lo siguiente:
SERVICE
: Es el nombre del servicio de Dataproc Metastore.LOCATION
: Es la región de Google Cloud en la que reside el servicio de Dataproc Metastore.bucket-name/path/to/folder
: Es la carpeta de destino de Cloud Storage en la que deseas almacenar la exportación.DUMP_TYPE
: Es el tipo de volcado de base de datos que generará la exportación. Los valores aceptados incluyenmysql
yavro
. El valor predeterminado esmysql
.
Verifica que la exportación se haya realizado correctamente.
Cuando se completa la exportación, Dataproc Metastore vuelve de forma automática al estado activo, sin importar si la exportación se realizó correctamente o no.
REST
Sigue las instrucciones de la API para exportar metadatos en un servicio con el Explorador de API.
Cuando se completa la exportación, el servicio vuelve de forma automática al estado activo, sin importar si se realizó correctamente o no.
Ver historial de exportaciones
Para ver el historial de exportaciones de un servicio de Dataproc Metastore en la consola de Google Cloud, completa los siguientes pasos:
- En la consola de Google Cloud, abre la página Dataproc Metastore.
En la barra de navegación, haz clic en Importar/Exportar.
Tu historial de exportaciones aparecerá en la tabla Historial de exportaciones.
El historial muestra hasta las últimas 25 exportaciones.
Si borras un servicio de Dataproc Metastore, también se borrará todo el historial de exportación asociado.
Soluciona los problemas comunes.
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.
Si deseas obtener más ayuda para resolver problemas comunes, consulta Situaciones de error de importación y exportación.