Las arquitecturas de datos a escala petabyte son un tema frecuente en el SAP-C02. El examen espera que puedas diseñar pipelines de datos end-to-end: ingesta, transformación, almacenamiento, consulta y gobernanza.
Contenido
Ingesta (Ingest)
Captura de datos de múltiples fuentes: batch y streaming.
• Kinesis Data Streams / Firehose — streaming en tiempo real
• AWS DMS — migración de bases de datos transaccionales
• AWS DataSync — transferencia de datos on-premises a S3
• S3 Transfer Acceleration — uploads rápidos desde ubicaciones globales
• Direct Connect / AWS Snow Family — transferencias masivas
Almacenamiento crudo (Raw)
S3 como repositorio central. Los datos se almacenan en formato original.
• S3 (zona raw/landing) — datos sin transformar en formato original
• Glacier — datos fríos o archivados a largo plazo
• S3 Intelligent-Tiering — lifecycle automático para datos de acceso impredecible
Procesamiento (Process)
Transformación, limpieza y enriquecimiento de datos.
• AWS Glue — ETL serverless con catálogo de datos
• EMR — Spark/Hadoop para procesamiento masivo con control total
• Lambda — transformación ligera sin servidor
• Kinesis Data Analytics / Apache Flink — procesamiento en streaming
Almacenamiento procesado (Curated)
Datos transformados listos para consumo analítico.
• S3 (zona curated) — Parquet/ORC para queries eficientes con Athena
• Redshift — data warehouse para OLAP y BI
• DynamoDB — acceso de baja latencia para dashboards en tiempo real
• ElastiCache — caché para resultados de queries frecuentes
Consumo (Consume)
Visualización, ML y acceso a los datos procesados.
• Athena — SQL serverless sobre S3
• QuickSight — BI y dashboards (nativo de AWS)
• SageMaker — entrenamiento de modelos ML sobre datos del lake
• Redshift Spectrum — queries sobre S3 desde Redshift
• OpenSearch — búsqueda y análisis de logs
Amazon Redshift es el data warehouse columnar gestionado de AWS, diseñado para OLAP (Online Analytical Processing). Escala a petabytes y soporta queries SQL complejas sobre datos agregados.
Componentes de arquitectura
Funciones clave para el examen
Glue Data Catalog
Repositorio central de metadatos: esquemas, tablas, particiones. Compatible con Hive Metastore. Lo usan Athena, Redshift Spectrum, EMR y Glue jobs para descubrir datos.
Glue Crawlers
Escanean fuentes de datos (S3, RDS, DynamoDB) automáticamente y crean/actualizan definiciones de tablas en el Data Catalog. Sin código manual de definición de esquemas.
Glue ETL Jobs
Scripts Python/Scala que transforman datos usando Apache Spark gestionado. Auto-generate code o scripts propios. Modo Spark o Python Shell (para cargas pequeñas).
Glue DataBrew
Herramienta visual de limpieza y normalización de datos sin código. 250+ transformaciones pre-construidas. Para usuarios no técnicos.
Glue Streaming ETL
Procesa datos de Kinesis Data Streams o MSK (Kafka) en micro-batches con Spark Structured Streaming. Para pipelines de datos en tiempo real.
Glue Workflows
Orquesta múltiples Glue jobs y crawlers en un DAG (directed acyclic graph). Triggers manuales, programados o basados en eventos.
Glue vs EMR — cuándo usar cada uno
Glue cuando:
EMR cuando:
Lake Formation centraliza la seguridad del Data Lake. En lugar de gestionar permisos S3 directamente, Lake Formation define permisos a nivel de tabla y columna en el Data Catalog, que se aplican a todos los servicios que lo usan (Athena, Redshift Spectrum, Glue).
Column-level security
Restringe acceso a columnas específicas (ej: ocultar PII como SSN o email a ciertos roles).
Row-level security
Filtra filas según el usuario que realiza la query (ej: cada analista solo ve datos de su región).
Cell-level security
Combina fila y columna para control granular máximo.
Data Filters
Condiciones que se aplican automáticamente en queries sin que el usuario las vea.
Cross-account access
Compartir tablas del Data Catalog con otras cuentas AWS mediante Lake Formation permissions.
Tag-based access
LF-Tags: permisos basados en etiquetas en lugar de ARNs específicos. Escalable para miles de tablas.
Características clave
Optimización de costos en Athena
OpenSearch es el sucesor de Amazon Elasticsearch Service. Es un motor de búsqueda y análisis distribuido para datos de logs, documentos y métricas. El examen menciona ambos nombres.
Búsqueda full-text
Búsqueda en documentos JSON con scoring de relevancia. Ideal para catálogos de productos, documentación técnica.
Análisis de logs
Kibana/OpenSearch Dashboards para visualizar logs de aplicaciones, CloudWatch Logs via Subscription Filters.
Búsqueda geoespacial
Queries de proximidad y mapas. Para apps de geolocalización y tracking de flotas.
| Tipo de workload | Servicio | Razón |
|---|---|---|
| Queries SQL ad-hoc sobre datos en S3 | Athena | Serverless, paga por escaneo, sin cluster que mantener |
| Data warehouse para BI con tablas de hechos/dimensiones | Redshift | Columnar, joins complejos, conectores BI, concurrencia scaling |
| ETL batch sin gestionar Spark | Glue | Serverless ETL, catálogo integrado, auto-generated code |
| ETL masivo con control total sobre Spark | EMR | Spot instances, configuración custom, más barato a gran escala |
| Búsqueda full-text o análisis de logs | OpenSearch | Motor de búsqueda con scoring, Kibana para visualización |
| Análisis de streams en tiempo real con SQL | Kinesis Data Analytics (Flink) | Managed Flink para queries sobre streams continuos |
| ML sobre datos del lake | SageMaker + S3/Athena | Accede a S3 directamente o via Athena para features |
| Gobernanza y seguridad a nivel columna del lake | Lake Formation | Column/row/cell security centralizado para Athena + Redshift |
Trampa: "Redshift es para OLTP (transacciones)"
Realidad: FALSO. Redshift es OLAP (analítico). Para OLTP usa RDS o Aurora. Redshift no está optimizado para escrituras frecuentes de una fila a la vez.
Trampa: "Athena almacena los datos que consulta"
Realidad: FALSO. Athena consulta datos que ya están en S3. No mueve ni almacena datos — solo los lee. El almacenamiento es en S3.
Trampa: "Glue Crawlers son necesarios para usar Athena"
Realidad: No son obligatorios. Puedes definir tablas manualmente en el Data Catalog. Los Crawlers automatizan ese proceso.
Trampa: "EMR es serverless como Glue"
Realidad: FALSO. EMR requiere provisioning de clusters (EC2). Sí se puede usar con spot instances para reducir costo, pero no es serverless. Existe EMR Serverless para procesamiento sin gestionar clusters.
¿Entendiste este tema?
Pon a prueba lo que acabas de aprender
Una empresa necesita construir un Data Lake en AWS. Los datos llegan por streaming desde IoT devices (100K eventos/seg), se procesan con transformaciones complejas, y los analistas de negocio necesitan ejecutar queries SQL ad-hoc. El equipo de seguridad requiere que ciertos analistas NO puedan ver la columna 'customer_id'. ¿Cuál es la arquitectura correcta?
Inicia sesión para llevar tu progreso.