Versiones auxiliares

En esta página, se explica cómo usar la función de versiones auxiliares con Dataproc Metastore.

Las versiones auxiliares permiten conectar dos versiones diferentes de un almacén de metadatos de Hive un único servicio de Dataproc Metastore. Esta configuración te permite admitir varios motores de procesamiento de datos que deben ejecutarse en diferentes almacenes de metadatos de Hive versiones.

Por ejemplo, con las versiones auxiliares, puedes conectar múltiples clústeres de Dataproc al mismo servicio de Dataproc Metastore. En esta configuración, un clúster puede ejecutar la versión 2.0 de Dataproc mientras que mientras que el otro ejecuta la versión 1.5 de Dataproc. El clúster de Dataproc 2.0 puede conectarse a un extremo que exponga la versión 3.1.2 de Hive, mientras que el El clúster de Dataproc 1.5 se conecta a un extremo que expone la versión de Hive 2.3.6.

Cómo funcionan las versiones auxiliares

Cuando habilitas las versiones auxiliares, Dataproc Metastore expone un extremo separado para cada versión del almacén de metadatos de Hive. Sin embargo, tanto y extremos comparten la misma base de datos de metadatos.

Esta función no te permite usar diferentes conjuntos de con un único servicio de Dataproc Metastore. Por el contrario, ofrece un para extender y mejorar la compatibilidad entre sus servicios.

Consideraciones

General

  • Solo puedes crear una versión auxiliar para cada Servicio de Dataproc Metastore.

  • La versión auxiliar se debe configurar para usar una versión inferior del metastore de Hive que la versión principal.

  • La versión auxiliar mantiene un archivo de registro independiente del archivo principal. versión. Para depurar problemas del almacén de metadatos de Hive, puedes usar Cloud Logging.

Compatibilidad de características

  • La versión auxiliar no admite las siguientes funciones:

  • Es posible que algunos métodos de Hive no sean compatibles entre el modelo auxiliar y versión principal. Esta compatibilidad depende de las versiones de Hive usando para tus versiones primarias y auxiliares y los métodos que se compatibles entre las versiones de Hive.

  • No todas las funciones de una instancia principal de Dataproc Metastore compatibles con la versión auxiliar. Por ejemplo, insertar registros en un La tabla transaccional de Hive no es compatible con las interfaces de clientes de Hive 2 con una versión auxiliar 2.3.6. Sin embargo, esta operación se admite con un Interfaz del cliente de Hive 3 con la versión principal 3.1.2

    Si una función de una versión de Hive anterior deja de estar disponible en una versión superior de Hive, la versión auxiliar anterior correspondiente no admitirá el modelo . Por ejemplo, Hive 2 admite índices, pero un la versión auxiliar que ejecuta Hive 2.3.6 no admitirá el índice si la versión ejecuta Hive 3.1.2.

  • Se evita la creación de tablas transaccionales con la versión auxiliar o la inserción de datos en tablas transaccionales en la versión auxiliar.

Propiedades compartidas entre versiones

Cuando creas una versión auxiliar, algunas propiedades se comparten y siguen siendo comunes entre la versión auxiliar y la principal versión. Las demás propiedades no se comparten y son independientes entre ambas versiones.

En la siguiente tabla, se enumeran estas diferencias.

Propiedades Nombre Separado
Extremo
Anulaciones de configuración de Hive*
Configuración de Kerberos
Protocolo de extremo (Thrift/gRPC)
Puerto de segunda mano
Bucket de artefactos de Cloud Storage
Nivel
Período de mantenimiento
Canal de versiones
Configuración de encriptación
Tipo de base de datos
Interruptor de sincronización de Data Catalog
Métrica de recuento de solicitudes
Configuraciones de red

* Las anulaciones de configuración de Hive permanecen separadas entre las y la versión principal. Sin embargo, la versión auxiliar hace referencia a una lista combinada. de las anulaciones (primaria y auxiliar). En este caso, la configuración auxiliar tiene prioridad sobre la configuración principal.

Antes de comenzar

Funciones requeridas

Para obtener el permiso que necesitas para crear un metastore de Dataproc que use versiones auxiliares, pídele a tu administrador que te otorgue los siguientes roles de IAM en tu proyecto, según el principio de privilegio mínimo:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

Este rol predefinido contiene las metastore.services.create permiso, que se requiere para crear un Dataproc Metastore que use versiones auxiliares

Es posible que también puedas obtener este permiso con roles personalizados otros roles predefinidos.

Para obtener más información sobre roles específicos de Dataproc Metastore y permisos, consulta Administra el acceso a Dataproc con la IAM.

Crea una versión auxiliar para un servicio nuevo

En el siguiente ejemplo, se muestra una versión abreviada de los pasos que sigues para habilitar versiones auxiliares. Para obtener instrucciones completas paso a paso sobre todo el proceso que debes seguir, consulta Cómo crear un Dataproc Metastore.

Console

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

    Abrir Dataproc Metastore

  2. En la parte superior de la página Dataproc Metastore haz clic en el botón Crear.

    Se abrirá la página Crear servicio.

  3. En Configuración de la versión auxiliar, habilita las versiones auxiliares.

  4. Haz clic en Agregar versión auxiliar.

    1. Ingresa un nombre para la versión auxiliar.

    2. Selecciona una versión para tu versión auxiliar.

    3. Opcional: Para aplicar una asignación a la versión auxiliar, haz clic en + Agregar anulaciones.

    4. Haz clic en Listo.

  5. Elige los parámetros de configuración restantes para tu servicio, según sea necesario.

  6. Haz clic en Enviar.

gcloud CLI

  1. Crear un servicio de Dataproc Metastore con una instancia auxiliar ejecuta uno de los siguientes gcloud metastore services create comandos:

    gcloud metastore services create SERVICE \
        --location=LOCATION \
        --auxiliary-versions=AUXILIARY_VERSIONS, ...
    
    • SERVICE: Es el nombre de tu Servicio de Dataproc Metastore.
    • LOCATION: Es la región en la que deseas crear tu servicio de Dataproc Metastore.
    • AUXILIARY_VERSIONS: una lista separada por comas de los Versiones de almacén de metadatos de Hive que se implementarán para tu versión auxiliar Solo se admite una versión auxiliar. Usa el siguiente formato "2.3.6".
    • AUXILIARY_VERSIONS_FROM_FILE: Una ruta a un archivo YAML que contiene la configuración de las versiones auxiliares. Para ver más y un ejemplo, consulta la Documentación del SDK.
  2. Verifica que la creación se haya realizado correctamente.

curl

Para crear un servicio de Dataproc Metastore con una versión auxiliar, sigue estos pasos: Usa el método create.

curl -X POST -s -i \
     -H "Authorization: Bearer $(gcloud auth print-access-token)" \
     -d '{"network":"projects/PROJECT_ID/global/networks/default", "port": 9083, "hive_metastore_config": {"auxiliary_versions": {"aux-version1": {"version": "AUX_VERSION"} } } }' \
     -H "Content-Type:application/json" \
     https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services?service_id=SERVICE_ID

Reemplaza lo siguiente:

  • SERVICE_ID: Es el nombre del nuevo. Servicio de Dataproc Metastore.
  • PROJECT_ID: El ID del proyecto de Google Cloud la creación del servicio de Dataproc Metastore.
  • LOCATION: Es la región en la que reside Dataproc Metastore.
  • AUX_VERSIONS: Una lista de Hive separada por comas del almacén de metadatos que se implementarán. Solo se admite una versión auxiliar.

Cómo actualizar una versión auxiliar de un servicio existente

En las siguientes instrucciones, se muestra cómo actualizar un Servicio de Dataproc Metastore que usa versiones auxiliares.

Cuando ejecutas una operación de actualización, puedes completar las siguientes tareas:

  • Agregar una nueva versión auxiliar
  • Borra una versión auxiliar existente.
  • Agrega o modifica anulaciones de una versión auxiliar existente.

Console

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

    Abrir Dataproc Metastore

  2. En la página Dataproc Metastore, haz clic en el nombre del servicio de la servicio que quieras actualizar.

    Se abrirá la página Detalle del servicio.

  3. En la pestaña Configuración, haz clic en Editar.

    Se abrirá la página Editar servicio.

  4. En la sección Configuración de versión auxiliar, haz clic en el botón de activación para habilitar o inhabilitar las versiones auxiliares.

    Puedes realizar las siguientes tareas:

    1. Para borrar una versión auxiliar existente, haz clic en Borrar.

    2. Para agregar una nueva versión auxiliar, haz clic en Agregar versión auxiliar.

    3. Para aplicar una asignación de anulación a una versión auxiliar, haz clic en + Agregar anulaciones.

  5. Haz clic en Enviar.

gcloud CLI

  1. Para actualizar un servicio de Dataproc Metastore que usa una versión auxiliar, sigue estos pasos: Ejecuta uno de los siguientes comandos de gcloud metastore services update:

    gcloud metastore services update SERVICE \
       --location=LOCATION \
       --add-auxiliary-versions=AUXILIARY_VERSIONS, ...
    

    o

    gcloud metastore services update SERVICE \
       --location=LOCATION \
       --update-auxiliary-versions-from-file=AUXILIARY_VERSIONS_FROM_FILE
    

    Reemplaza lo siguiente:

    • SERVICE: Es el nombre de tu Servicio de Dataproc Metastore.
    • LOCATION: Es la región en la que reside Dataproc Metastore.
    • AUXILIARY_VERSIONS: una lista separada por comas de del almacén de metadatos de Hive auxiliar que se implementarán.
    • AUXILIARY_VERSIONS_FROM_FILE: Es una ruta de acceso a un archivo YAML que contiene la configuración de las versiones auxiliares. Para obtener más información y un ejemplo, consulta la documentación del SDK.
  2. Verifica que la actualización se haya realizado correctamente.

curl

Para actualizar un servicio de Dataproc Metastore que usa una herramienta auxiliar usa el método patch.

curl -X PATCH -s -i \
   -H "Authorization: Bearer $(gcloud auth print-access-token)" \
   -d '{"hive_metastore_config": {"auxiliary_versions": {"aux-version1": {"version": "AUX_VERSION} } } }' \
   -H "Content-Type:application/json" \
   https://metastore.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/services/SERVICE_ID?update_mask=hive_metastore_config.auxiliary_versions

Reemplaza lo siguiente:

  • SERVICE_ID: Es el nombre de tu Servicio de Dataproc Metastore.
  • PROJECT_ID: Es el ID del proyecto de Google Cloud que estás creando. Clúster de servicio de Dataproc Metastore.
  • LOCATION: Es la región en la que se reside Dataproc Metastore.
  • AUX_VERSIONS: una lista separada por comas de del almacén de metadatos de Hive auxiliar que se implementarán.

¿Qué sigue?