En esta página, se explica cómo exportar metadatos desde Dataproc Metastore.
La función de exportación de metadatos te permite guardar tus metadatos en un formato de almacenamiento portátil.
Después de exportar tus datos, puedes importar los metadatos a otro servicio de Dataproc Metastore o a un almacén de metadatos de Hive (HMS) autoadministrado.
Información 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:
- Un 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 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 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, pídele a tu administrador que te otorgue los siguientes roles de IAM:
-
Para exportar metadatos, haz lo siguiente:
-
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 (
-
Para MySQL y Avro, para usar el objeto de Cloud Storage para la exportación, haz lo siguiente:
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.
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 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, haz lo siguiente:
metastore.services.export
en el servicio de Metastore -
Para 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 los siguientes permisos:
storage.objects.create
en el bucket de Cloud Storage
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 Descripción general de la IAM de Dataproc Metastore.Exportar metadatos
Antes de exportar tus metadatos, ten en cuenta las siguientes consideraciones:
- Mientras se ejecuta una exportación, no puedes actualizar un servicio de Dataproc Metastore, por ejemplo, cambiar la configuración. Sin embargo, puedes usarlo para operaciones normales, como acceder a sus metadatos desde Dataproc adjunto o clústeres administrados por el usuario.
- La función de exportación de metadatos solo exporta metadatos. Los datos que crea Apache Hive 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 del 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 al que deseas exportar tus 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 iniciar 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 automáticamente al estado activo, independientemente de si la exportación se realizó de forma correcta o no.
gcloud CLI
Para exportar metadatos de 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 de tu servicio de Dataproc Metastore.LOCATION
: Es la región de Google Cloud en la que reside tu 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 automáticamente al estado activo, independientemente de si la exportación se realizó de forma correcta o no.
REST
Sigue las instrucciones de la API para exportar metadatos a un servicio con el Explorador de API.
Cuando se completa la exportación, el servicio vuelve automáticamente al estado activo, sin importar si se realizó de forma correcta o no.
Cómo ver el historial de exportaciones
Para ver el historial de exportaciones de un servicio de Dataproc Metastore en la console 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 exportaciones asociado.
Soluciona los problemas comunes.
Estos son algunos problemas comunes:
- El agente de servicio o la cuenta de usuario no tienen los permisos necesarios.
- La tarea falla porque el archivo de la base de datos es demasiado grande.
Para obtener más ayuda para solucionar problemas comunes, consulta Situaciones de error de importación y exportación.