Conexión de Athena a un metastore de Apache Hive - Amazon Athena

Conexión de Athena a un metastore de Apache Hive

Para conectar Athena al metaalmacén de Apache Hive, debe crear y configurar una función de Lambda. Para una implementación básica, puede realizar todos los pasos necesarios comenzando desde la consola de administración de Athena.

nota

El siguiente procedimiento requiere tener permiso para crear un rol de IAM personalizado para la función de Lambda. Si no tiene permiso para crear un rol personalizado, puede utilizar la implementación de referencia de Athena para crear una función de Lambda por separado y, a continuación, utilizar la consola AWS Lambda para elegir un rol de IAM existente para la función. Para obtener más información, consulte Conexión de Athena a un metastore de Hive mediante un rol de ejecución de IAM existente.

Para conectar Athena a un metaalmacén de Hive
  1. Abra la consola de Athena en https://console.aws.amazon.com/athena/.

  2. Si el panel de navegación de la consola no está visible, elija el menú de expansión de la izquierda.

    Elija el menú de expansión.
  3. Elija Orígenes de datos y catálogos.

  4. En la parte superior derecha de la consola, elija Create data source (Crear origen de datos).

  5. En la página Choose data sources (Elegir orígenes de datos), en Data sources (Orígenes de datos), elija S3 - Apache Hive metastore (S3: metastore de Apache Hive).

  6. Elija Siguiente.

  7. En la sección Detalles de origen de datos, en Nombre de origen de datos, ingrese el nombre que quiera utilizar en las instrucciones SQL cuando consulte el origen de datos desde Athena. El nombre puede tener hasta 127 caracteres y debe ser único dentro de su cuenta. No se puede cambiar después crearlo. Los caracteres válidos son a-z, A-Z, 0-9, _ (guion bajo), @ (arroba) y - (guion). Los nombres awsdatacatalog, hive, jmx y system están reservados por Athena y no se pueden utilizar para nombres de orígenes de datos.

  8. En Función de Lambda, elija Crear una función de Lambda y, luego, elija Crear una nueva función de Lambda en AWS Lambda.

    La página AthenaHiveMetastoreFunction se abre en la consola de AWS Lambda. La página incluye información detallada sobre el conector.

    La página AthenaHiveMetastoreFunction en la consola de AWS Lambda.
  9. En Configuración de aplicación, ingrese los parámetros de la función de Lambda.

    • LambdaFuncName: Proporcione un nombre para la función. Por ejemplo, myHiveMetastore.

    • SpillLocation: especifique una ubicación de Amazon S3 en esta cuenta para contener los metadatos de desbordamiento si el tamaño de la respuesta de la función de Lambda supera los 4 MB.

    • HMSUris: ingrese el URI de su host del metaalmacén de Hive que utiliza el protocolo Thrift en el puerto 9083. Utilice la sintaxis thrift://<host_name>:9083.

    • LambdaMemory: especifique un valor comprendido entre 128 y 3008 MB. A la función de Lambda se le asignan ciclos de CPU proporcionales a la cantidad de memoria que configure. El valor predeterminado es 1024.

    • LambdaTimeout: especifique el tiempo máximo permitido de ejecución de invocación Lambda en segundos de 1 a 900 (900 segundos es 15 minutos). El valor predeterminado es 300 segundos (5 minutos).

    • VPCSecurityGroupIds: ingrese una lista separada por comas de ID de grupo de seguridad de la VPC para el metaalmacén de Hive.

    • VPCSubnetIds: ingrese una lista separada por comas de ID de subred de la VPC para el metaalmacén de Hive.

  10. Seleccione I acknowledge that this app creates custom IAM roles (Confirmo que esta aplicación puede crear roles de IAM personalizados) y, a continuación, elija Deploy (Implementar).

    Implementación de la aplicación de función de Lambda desde la consola de AWS Lambda.

    Cuando se completa la implementación, la función aparece en la lista de aplicaciones de Lambda. Ahora que se ha implementado la función del metaalmacén de Hive en la cuenta, puede configurar Athena para que la use.

  11. Vuelva a la página Enter data source details (Ingresar detalles de orígenes de datos) de la consola de Athena.

  12. En la sección Función de Lambda, elija el icono de actualizar situado junto al cuadro de búsqueda de la función de Lambda. Actualizar la lista de funciones disponibles hace que la función recién creada aparezca en la lista.

  13. Elija el nombre de la función que acaba de crear en la consola de Lambda. Se muestra el ARN de la función de Lambda.

  14. (Opcional) En Tags (Etiquetas), agregue pares clave-valor que asociar con este origen de datos. Para obtener más información acerca de las etiquetas, consulte Etiquetado de recursos de Athena.

  15. Elija Siguiente.

  16. En la página Review and create (Revisar y crear), revise los detalles del origen de datos y, a continuación, elija Create data source (Crear origen de datos).

  17. La sección Data source details (Detalles del origen de datos) de la página de la fuente de datos muestra información sobre el nuevo conector.

    Ahora puede usar el Data source name (Nombre de origen de datos) que especificó para referenciar el metastore de Hive en las consultas SQL en Athena. En las consultas SQL, utilice la siguiente sintaxis de ejemplo, reemplazando hms-catalog-1 por el nombre de catálogo especificado anteriormente.

    SELECT * FROM hms-catalog-1.CustomerData.customers
  18. Para obtener información sobre la visualización, edición o eliminación de los orígenes de datos creados, consulte Administración de orígenes de datos.