Uso de bibliotecas de Python en Athena para Spark - Amazon Athena

Uso de bibliotecas de Python en Athena para Spark

En esta página, se describe la terminología utilizada y la administración del ciclo de vida de los tiempos de ejecución, las bibliotecas y los paquetes que se utilizan en Amazon Athena para Apache Spark.

Definiciones

  • Amazon Athena para Apache Spark es una versión personalizada de Apache Spark de código abierto. Para ver la versión actual, ejecute el comando print(f'{spark.version}') en una celda de un cuaderno.

  • El tiempo de ejecución de Athena es el entorno en el que se ejecuta su código. El entorno incluye un intérprete de Python y bibliotecas de PySpark.

  • Una biblioteca o paquete externo es una biblioteca JAR o Python de Java o Scala que no forma parte del tiempo de ejecución de Athena, pero que se puede incluir en los trabajos de Athena para Spark. Tanto usted como Amazon pueden crear los paquetes externos.

  • Un paquete de conveniencia es un conjunto de paquetes externos seleccionados por Athena que puede elegir incluir en sus aplicaciones de Spark.

  • Una agrupación combina el tiempo de ejecución de Athena y un paquete de conveniencia.

  • Una biblioteca de usuario es una biblioteca o paquete externo que agrega explícitamente a su trabajo de Athena para Spark.

    • Una biblioteca de usuario es un paquete externo que no forma parte de un paquete de conveniencia. Es necesario cargar e instalar una biblioteca de usuario, como cuando escribe algunos archivos .py, los comprime y, a continuación, agrega los archivos .zip a la aplicación.

  • Una aplicación de Athena para Spark es un trabajo o una consulta que se envía a Athena para Spark.

Administración del ciclo de vida

En las siguientes secciones, se describen las políticas de control de versiones y obsolescencia relacionadas con los paquetes de tiempo de ejecución y comodidad utilizados en Athena para Spark.

Control de versiones y obsolescencia del tiempo de ejecución

El componente principal del tiempo de ejecución de Athena es el intérprete de Python. Dado que Python es un lenguaje en evolución, se lanzan nuevas versiones con regularidad y se elimina el soporte para las versiones anteriores. Athena no recomienda ejecutar programas con versiones obsoletas del intérprete de Python y recomienda encarecidamente que utilice el último tiempo de ejecución de Athena siempre que sea posible.

La programación de obsolescencia del tiempo de ejecución de Athena es la siguiente:

  1. Una vez que Athena proporcione un nuevo tiempo de ejecución, Athena seguirá admitiendo el tiempo de ejecución anterior durante 6 meses. Durante ese tiempo, Athena aplicará revisiones y actualizaciones de seguridad al tiempo de ejecución anterior.

  2. Transcurridos 6 meses, Athena dejará de ofrecer soporte para el tiempo de ejecución anterior. Athena ya no aplicará revisiones de seguridad ni otras actualizaciones al tiempo de ejecución anterior. Las aplicaciones de Spark que utilicen el tiempo de ejecución anterior ya no podrán recibir soporte técnico.

  3. Transcurridos 12 meses, ya no podrá actualizar ni editar las aplicaciones de Spark en un grupo de trabajo que utilice el tiempo de ejecución anterior. Le recomendamos actualizar sus aplicaciones de Spark antes de finalizar este periodo. Una vez finalizado el periodo de tiempo, podrá seguir ejecutando los cuadernos existentes, pero los cuadernos que sigan utilizando el tiempo de ejecución anterior registrarán una advertencia en ese sentido.

  4. Transcurridos 18 meses, ya no podrá ejecutar los trabajos en el grupo de trabajo utilizando el tiempo de ejecución anterior.

Control de versiones y obsolescencia de los paquetes de conveniencia

El contenido de los paquetes de conveniencia cambia con el tiempo. Athena ocasionalmente agrega, elimina o actualiza estos paquetes de conveniencia.

Athena utiliza las siguientes pautas para los paquetes de conveniencia:

  • Los paquetes de conveniencia tienen un esquema de control de versiones simple, como 1, 2, 3.

  • Cada versión del paquete de conveniencia incluye versiones específicas de paquetes externos. Una vez que Athena crea un paquete de conveniencia, el conjunto de paquetes externos del paquete de conveniencia y sus versiones correspondientes no cambian.

  • Athena crea una nueva versión del paquete de conveniencia cuando incluye un nuevo paquete externo, elimina un paquete externo o actualiza la versión de uno o más paquetes externos.

Athena descarta un paquete de conveniencia cuando descarta el tiempo de ejecución de Athena que utiliza el paquete. Athena puede descartar los paquetes antes para limitar la cantidad de paquetes que admite.

La programación de obsolescencia de los paquetes de conveniencia sigue la programación de obsolescencia del tiempo de ejecución de Athena.