Exporta metadatos desde un servicio

Una exportación toma metadatos almacenados en un servicio de Dataproc Metastore y muestra una carpeta de archivos Avro o un archivo de volcado de MySQL en una carpeta de Cloud Storage. En la exportación de Avro, se crea un archivo <table-name>.avro para cada tabla.

En esta página, se explica cómo exportar metadatos desde un servicio existente de Dataproc Metastore con Google Cloud Console desde un navegador local, con la herramienta de línea de comandos de gcloud del SDK de Cloud o con el método de la API de Dataproc Metastore services.exportMetadata.

Antes de comenzar

Control de acceso

  • Para exportar metadatos, debes tener una función de IAM que contenga el permiso metastore.services.export de IAM. Las funciones específicas de Dataproc Metastore roles/metastore.admin, roles/metastore.editor y roles/metastore.metadataOperator se pueden usar para otorgar permisos de exportación.

  • También puedes otorgar permiso de exportación a usuarios o grupos mediante las funciones heredadas roles/owner y roles/editor.

  • El agente de servicio de Dataproc Metastore (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) debe tener el permiso storage.objects.create en el destino del bucket de Cloud Storage para la exportación.

    • El usuario que crea la exportación también debe tener el permiso storage.objects.create en el bucket.
  • Si usas los Controles del servicio de VPC, solo puedes exportar datos a un bucket de Cloud Storage que resida en el mismo perímetro de servicio que el servicio de Dataproc Metastore.

Para obtener más información, consulta la IAM y el control de acceso de Dataproc Metastore.

Exporta metadatos desde un servicio

Puedes exportar metadatos desde un servicio seleccionando el destino de exportación en la página de detalles del servicio desde un navegador local, con la herramienta de gcloud o con un método de la API de Dataproc Metastore services.exportMetadata.

Mientras se ejecuta una exportación, no se pueden realizar actualizaciones al servicio. Puedes usar el servicio mientras se realiza una exportación.

Puedes exportar metadatos desde un servicio de Dataproc Metastore con Google Cloud Console, con la herramienta de gcloud o con la API de Dataproc Metastore:

Console

  1. En Cloud Console, abre la página de Dataproc Metastore:

    Abre Dataproc Metastore en Cloud Console

  2. 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.

    Página de detalles del servicio
  3. En la parte superior de la página, haz clic en el botón Exportar. Se abrirá la página Exportar metadatos.

  4. Selecciona el destino.

  5. Busca y selecciona el URI de Cloud Storage en el que deseas que se almacene la exportación.

  6. Haz clic en el botón Enviar para comenzar la exportación.

  7. Verifica que hayas regresado a la página Detalles del servicio y que la exportación aparezca en Historial de exportaciones en la pestaña Importar/Exportar.

gcloud

  1. Usa el siguiente comando de gcloud metastore services export gcs para exportar metadatos desde un servicio:

    gcloud metastore services export gcs SERVICE  \
        --location=LOCATION \
        --destination-folder=gs://bucket-name/path/to/folder \
        --dump-type=DUMP_TYPE
    

    Reemplaza lo siguiente:

    • SERVICE: Nombre del servicio.
    • LOCATION: Se refiere a una región de Google Cloud.
    • bucket-name/path/to/folder: Se refiere a la carpeta de destino de Cloud Storage.
    • DUMP_TYPE: el tipo de volcado de la base de datos. La configuración predeterminada es mysql.
  2. Verifica que la exportación se haya realizado correctamente.

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 ingresa automáticamente en el estado activo sin importar si se realizó de forma correcta o no.

Para ver el historial de exportaciones de un servicio, consulta la pestaña Importar/Exportar en la página Detalles del servicio en Cloud Console.

Exportar advertencias

  • En la IU, hay un historial de exportaciones anteriores. Si borras el servicio mismo, se borrará todo el historial de exportaciones de ese servicio.

Errores comunes

  • El agente de servicio de Dataproc Metastore (service-CUSTOMER_PROJECT_NUMBER@gcp-sa-metastore.iam.gserviceaccount.com) no tiene el permiso storage.objects.create en el depósito de Cloud Storage que se usa para los archivos de volcado de Avro o MySQL.

    • El usuario que crea la exportación no tiene el permiso storage.objects.create en el bucket.
  • El archivo de base de datos es demasiado grande y tarda más de una hora para completar el proceso de exportación.

Próximos pasos