ETL basado en SQL con Apache Spark en Amazon EKS

ETL basado en SQL con Apache Spark en Amazon EKS proporciona compatibilidad para el procesamiento de datos declarativos, las capacidades de extracción, la transformación y carga (ETL) sin código y automatización de la orquestación del flujo de trabajo para ayudar a los usuarios de su empresa (como analistas y científicos de datos) a acceder a los datos y crear información significativa sin necesidad de procesos de TI manuales.

Beneficios

Cree, pruebe y depure trabajos ETL en Jupyter

Utilice JupyterHub, un entorno de desarrollo integrado (IDE) basado en web para simplificar el desarrollo de su aplicación ETL.

Utilice un enfoque que da prioridad a SQL
.

Implemente lógica empresarial y comprobaciones de calidad de los datos en el desarrollo de canalizaciones de ETL con Spark SQL.

Orqueste trabajos sin código
.

Utilice flujos de trabajo de Argo para programar trabajos y administrar dependencias de trabajo complejas sin necesidad de código.

Implemente imágenes de Docker automáticamente
.

Configure una canalización de mejora y desarrollo continuos (CI/CD) de AWS para almacenar de manera segura la imagen de Docker de un marco de datos en Amazon Elastic Container Registry (Amazon ECR).

Información general

El siguiente diagrama presenta la arquitectura que puede crear mediante el código de muestra en GitHub.

Arquitectura de ETL basado en SQL con Apache Spark en Amazon EKS

ETL basado en SQL con Apache Spark en Amazon EKS implementa un entorno seguro, tolerante a errores y con escalado automático para admitir las cargas de trabajo ETL que contengan los siguientes componentes:

  1. Una capa de administración de flujos de trabajo personalizable y flexible (consulte Orquestación en el grupo Amazon Elastic Kubernetes Service [Amazon EKS] del diagrama) incluye el complemento Argo Workflows. Este complemento brinda una herramienta basada en web para orquestar sus trabajos ETL sin necesidad de escribir código. De manera opcional, puede utilizar otras herramientas de flujo de trabajo como Volcano y Apache Airflow.
  2. Se configura un espacio de trabajo de procesamiento de datos seguro para unificar cargas de trabajo de datos en el mismo clúster de Amazon EKS. Esta especie de trabajo contiene una segunda herramienta basada en web, JupyterHub para creaciones de trabajo y pruebas interactivas. Puede desarrollar un bloc de notas de Jupyter mediante un enfoque declarativo para especificar tareas ETL o escribir de manera programada sus pasos ETL mediante PySpark. Este espacio de trabajo también brinda automatizaciones de trabajos de Spark que administra la herramienta Argo Workflows.
  3. La solución cuenta con un conjunto de funciones de seguridad implementado. Amazon Elastic Container Registry (Amazon ECR) mantiene y asegura una imagen de Docker de un marco de procesamiento de datos. La característica de roles de AWS Identity and Access Management (IAM) para cuentas de servicio (IRSA) en Amazon EKS brinda autorización mediante tokens con control de acceso detallado a otros servicios de AWS. Por ejemplo, la integración de Amazon EKS con Amazon Athena no utiliza contraseña para reducir el riesgo de exponer credenciales de AWS en una cadena de conexión. Jupyter obtiene credenciales de inicio de sesión de AWS Secrets Manager en Amazon EKS sobre la marcha. Amazon CloudWatch monitorea aplicaciones en Amazon EKS mediante la característica CloudWatch Container Insights activada.
  4. Las cargas de trabajo de análisis en el clúster de Amazon EKS envían resultados de datos a un lago de datos de Amazon Simple Storage Service (Amazon S3). En un catálogo de datos de AWS Glue se crea una entrada de esquema de datos (metadatos) a través de Amazon Athena.

ETL basado en SQL con Apache Spark en Amazon EKS

Versión 1.0.0
Lanzamiento: 07/2021
Autor: AWS

Recursos adicionales

¿Esta guía fue de ayuda?
Proporcione su opinión 
Icono de creación
Implemente una solución de AWS por su cuenta

Revise nuestra biblioteca de soluciones de AWS para obtener respuestas a problemas de arquitectura comunes.

Más información 
Buscar un socio de APN
Buscar una solución de un socio de AWS

Encuentre socios de AWS que lo ayuden a comenzar.

Icono de exploración
Explorar orientación

Encuentre diagramas de arquitectura prescriptivos, código de muestra y contenido técnico para casos de uso comunes.

Más información