in

Nuevo: Amazon Athena para Apache Spark | Servicios web de Amazon

Cuando Jeff Barr anunció Amazon Athena por primera vez en 2016, cambió mi perspectiva sobre la interacción con los datos. Con Amazon Athena, puedo interactuar con mis datos en solo unos pocos pasos, desde la creación de una tabla en Athena, la carga de datos mediante conectores y la consulta mediante el estándar ANSI SQL.

Con el tiempo, varias industrias, como los servicios financieros, la atención médica y el comercio minorista, han necesitado ejecutar análisis más complejos para una variedad de formatos y tamaños de datos. Para facilitar el análisis de datos complejos, las organizaciones adoptaron Apache Spark. Apache Spark es un popular sistema de procesamiento distribuido de código abierto diseñado para ejecutar cargas de trabajo de análisis rápido para datos de cualquier tamaño.

Sin embargo, construir la infraestructura para ejecutar Apache Spark para aplicaciones interactivas no es fácil. Los clientes necesitan aprovisionar, configurar y mantener la infraestructura además de las aplicaciones. Sin mencionar la realización de recursos de ajuste óptimos para evitar inicios lentos de aplicaciones y sufrir costos inactivos.

Presentación de Amazon Athena para Apache Spark
Hoy, me complace anunciar Amazon Athena para Apache Spark. Con esta característica, podemos ejecutar cargas de trabajo de Apache Spark, usar Jupyter Notebook como interfaz para realizar el procesamiento de datos en Athena e interactuar mediante programación con aplicaciones Spark usando las API de Athena. Podemos iniciar Apache Spark en menos de un segundo sin tener que aprovisionar manualmente la infraestructura.

Aquí hay una vista previa rápida:

Cómo funciona
Dado que Amazon Athena para Apache Spark se ejecuta sin servidor, esto beneficia a los clientes al realizar una exploración de datos interactiva para obtener información sin la necesidad de aprovisionar y mantener recursos para ejecutar Apache Spark. Con esta característica, los clientes ahora pueden crear aplicaciones de Apache Spark utilizando la experiencia del portátil directamente desde la consola de Athena o mediante programación mediante las API.

La siguiente figura explica cómo funciona esta función:

En la consola de Athena, ahora puede ejecutar cuadernos y ejecutar aplicaciones Spark con Python usando cuadernos de Jupyter. En este cuaderno Jupyter, los clientes pueden consultar datos de varias fuentes y realizar múltiples cálculos y visualizaciones de datos utilizando aplicaciones Spark sin cambiar de contexto.

Amazon Athena se integra con AWS Glue Data Catalog, lo que ayuda a los clientes a trabajar con cualquier origen de datos en AWS Glue Data Catalog, incluidos los datos en Amazon S3. Esto abre posibilidades para los clientes en la creación de aplicaciones para analizar y visualizar datos para explorar datos para preparar conjuntos de datos para canalizaciones de aprendizaje automático.

Como demostré en la sección de vista previa de demostración, la inicialización del grupo de trabajo que ejecuta el motor Apache Spark tarda menos de un segundo en ejecutar recursos para cargas de trabajo interactivas. Para que esto sea posible, Amazon Athena para Apache Spark utiliza Firecracker, una micromáquina virtual liviana, que permite un tiempo de inicio instantáneo y elimina la necesidad de mantener grupos de recursos tibios. Esto beneficia a los clientes que desean realizar una exploración de datos interactiva para obtener información sin tener que preparar recursos para ejecutar Apache Spark.

Introducción a Amazon Athena para Apache Spark
Veamos cómo podemos usar Amazon Athena para Apache Spark. En esta publicación, explicaré paso a paso cómo comenzar con esta función.

El primer paso es crear un grupo de trabajo. En el contexto de Athena, un grupo de trabajo nos ayuda a separar las cargas de trabajo entre usuarios y aplicaciones.

Para crear un grupo de trabajo, desde el tablero de Athena, seleccione Crear grupo de trabajo.

En la página siguiente, doy el nombre y la descripción de este grupo de trabajo.

En la misma página, puedo elegir Apache Spark como motor para Athena. Además, también necesito especificar un rol de servicio con los permisos apropiados para usarse dentro de un cuaderno Jupyter. Entonces, compruebo Activar bloc de notas de ejemplo, lo que me facilita comenzar con Apache Spark dentro de Athena. También tengo la opción de cifrar los cuadernos de Jupyter administrados por Athena o usar la clave que tengo configurada en AWS Key Management Service (AWS KMS).

Después de eso, necesito definir un depósito de Amazon Simple Storage Service (Amazon S3) para almacenar los resultados de los cálculos del cuaderno Jupyter. Una vez que estoy seguro de todas las configuraciones para este grupo de trabajo, solo tengo que seleccionar Crear grupo de trabajo.

Ahora, puedo ver el grupo de trabajo ya creado en Athena.

Para ver los detalles de este grupo de trabajo, puedo seleccionar el enlace del grupo de trabajo. Como también revisé el Activar bloc de notas de ejemplo al crear este grupo de trabajo, tengo un cuaderno Jupyter para ayudarme a comenzar. Amazon Athena también me brinda flexibilidad para importar cuadernos existentes que puedo cargar desde mi computadora portátil con Importar archivo o cree nuevos cuadernos desde cero seleccionando Crear cuaderno.

Cuando selecciono el ejemplo del cuaderno Jupyter, puedo comenzar a crear mi aplicación Apache Spark.

Cuando ejecuto un cuaderno Jupyter, crea automáticamente una sesión en el grupo de trabajo. Posteriormente, cada vez que ejecute un cálculo dentro del cuaderno Jupyter, todos los resultados se registrarán en la sesión. De esta forma, Athena me proporciona información completa para revisar cada cálculo seleccionando Identificador de cálculoque me llevó a la Detalles del cálculo página. Aquí, puedo revisar el Código y también Resultados para el calculo

En la sesión, puedo ajustar el Tamaño del coordinador y Tamaño del ejecutor, con 1 unidad de procesamiento de datos (DPU) por defecto. Una DPU consta de 4 vCPU y 16 GB de RAM. Cambiar a una DPU más grande me permite procesar tareas más rápido si tengo cálculos complejos.

Acceso programático a la API
Además de usar la consola de Athena, también puedo usar el acceso programático para interactuar con la aplicación Spark dentro de Athena. Por ejemplo, puedo crear un grupo de trabajo con el create-work-group comando, inicie un cuaderno con create-notebooky ejecute una sesión de cuaderno con start-session.

El uso del acceso programático es útil cuando necesito ejecutar comandos como generar informes o calcular datos sin tener que abrir el cuaderno Jupyter.

Con mi cuaderno Jupyter que he creado antes, puedo iniciar una sesión ejecutando el siguiente comando con la AWS CLI:

$> aws athena start-session \
    --work-group <WORKGROUP_NAME>\
    --engine-configuration '{"CoordinatorDpuSize": 1, "MaxConcurrentDpus":20, "DefaultExecutorDpuSize": 1, "AdditionalConfigs":{"NotebookId":"<NOTEBOOK_ID>"}}'
    --notebook-version "Jupyter 1"
    --description "Starting session from CLI"

{
    "SessionId":"<SESSION_ID>",
    "State":"CREATED"
}

Entonces, puedo ejecutar un cálculo usando el start-calculation-execution API.

$ aws athena start-calculation-execution \
    --session-id "<SESSION_ID>"
    --description "Demo"
    --code-block "print(5+6)"

{
    "CalculationExecutionId":"<CALCULATION_EXECUTION_ID>",
    "State":"CREATING"
}

Además de usar código en línea, con el --code-block flag, también puedo pasar la entrada de un archivo de Python usando el siguiente comando:

$ aws athena start-calculation-execution \
    --session-id "<SESSION_ID>"
    --description "Demo"
    --code-block file://<PYTHON FILE>

{
    "CalculationExecutionId":"<CALCULATION_EXECUTION_ID>",
    "State":"CREATING"
}

Precios y disponibilidad
Amazon Athena para Apache Spark ya está disponible en las siguientes regiones de AWS: EE. UU. Este (Ohio), EE. UU. Este (Norte de Virginia), EE. UU. Oeste (Oregón), Asia Pacífico (Tokio) y Europa (Irlanda). Para utilizar esta función, se le cobra en función de la cantidad de uso informático definido por la unidad de procesamiento de datos o DPU por hora. Para obtener más información, consulte nuestra página de precios aquí.

Para comenzar con esta característica, consulte Amazon Athena para Apache Spark para obtener más información de la documentación, comprender los precios y seguir el tutorial paso a paso.

edificio feliz,

Donnie



Fuente

Written by TecTop

Preguntas frecuentes sobre la liquidación del teclado de mariposa de MacBook: todo lo que necesita saber

AWS lleva la seguridad de Verified Access a la empresa de Apple