Migra los metadatos de Dataproc Metastore al metastore de BigLake
En este documento, se explica cómo usar la herramienta de migración de metadatos de BigLake, que te ayuda a mover metadatos de bases de datos, tablas y particiones de un servicio de Dataproc Metastore al metastore de BigLake.
Antes de comenzar
- Habilita la facturación en tu Google Cloud proyecto. Obtén información sobre cómo verificar si la facturación está habilitada en un proyecto.
Habilita las APIs de BigQuery y Dataflow.
Opcional: Obtén más información sobre los siguientes temas:
- Comprende cómo funciona BigLake Metastore y por qué deberías usarlo.
- Aprende a usar Dataflow y a supervisar un trabajo en proceso.
Roles obligatorios
Para obtener los permisos que necesitas para ejecutar la herramienta de migración, pídele a tu administrador que te otorgue los siguientes roles de IAM:
-
Crear bases de datos, tablas y particiones en BigQuery:
Editor de datos de BigQuery (
roles/bigQuery.dataEditor
) en la cuenta de servicio de Dataflow que ejecuta el trabajo de migración -
Otorga acceso de lectura a los metadatos de Dataproc Metastore en un extremo de gRPC:
Rol de visor de metadatos (
roles/metastore.metadataViewer
) en la cuenta de servicio de Dataflow que ejecuta la tarea de migración.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.
También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.
Cómo funciona la herramienta de migración
La herramienta de migración inicia un trabajo de Dataflow que extrae metadatos de Dataproc Metastore y los transfiere al metastore de BigLake.
No puedes acceder a los datos de Dataproc Metastore directamente desde el metastore de BigLake. Este proceso de migración es necesario para ejecutar cargas de trabajo o trabajos en metadatos existentes. Si no usas esta herramienta, debes extraer los metadatos de Dataproc Metastore manualmente y transferirlos al metastore de BigLake.
Consideraciones
- La herramienta de migración admite instancias de Dataproc Metastore que usan el protocolo de extremo gRPC o Thrift.
- Cada vez que ejecutas la herramienta de migración, el trabajo de Dataflow crea una copia completa de los metadatos de Dataproc Metastore a BigLake Metastore.
Limitaciones
La herramienta de migración no migra metadatos no relacionados con las particiones de la base de datos y las tablas. Si la herramienta no puede migrar una base de datos o una tabla, registra un mensaje en la instancia de Cloud Logging del proyecto que contiene el trabajo de Dataflow.
Después de que se registra el error, el trabajo de Dataflow continúa procesando otras tablas y bases de datos en la canalización.
Ejecuta una migración con la herramienta
Para ejecutar una migración con la herramienta, crea un trabajo de plantilla de flex de Dataflow. Para ello, ejecuta el siguiente comando gcloud dataflow
flex-template
.
gcloud dataflow flex-template run JOB_NAME" \ --template-file-gcs-location "gs://bigquery-metastore-migration/dpms_to_blms_migration.json" \ --parameters bigQueryMetastoreProjectId="DESTINATION_BIGQUERY_PROJECT_ID" \ --parameters endpointUri="METASTORE_URI" \ --parameters bigQueryMetastoreDatabaseLocation=DATABASE_LOCATION \ [--network=NETWORK] \ [--subnetwork=SUBNETWORK]
Reemplaza lo siguiente:
JOB_NAME
: Es el nombre del trabajo de Dataflow para ejecutar la migración.DESTINATION_BIGQUERY_PROJECT_ID
: Es el ID del proyecto de BigQuery en el que el trabajo de Dataflow escribe datos.METASTORE_URI
: Es el URI del servicio de Dataproc Metastore.DATABASE_LOCATION
: Es la ubicación en la que BigLake Metastore escribe datos. Por ejemplo, si estableces este valor enUS
, todos los recursos de BigQuery que crea la herramienta se almacenan en esta ubicación.NETWORK
: Opcional: Es la red para ejecutar el trabajo de Dataflow. Solo es obligatorio para los servicios de Dataproc Metastore que usan un extremo de Thrift.SUBNETWORK
: Opcional: Es la subred para ejecutar el trabajo de Dataflow. Solo es obligatorio para los servicios de Dataproc Metastore que usan un extremo de Thrift.