1/49
Flashcards de vocabulario técnico especializado para entrevistas de Data Engineering, cubriendo SQL, Spark, GCP, orquestación y arquitectura de datos.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Window Function
Permite hacer cálculos sobre un conjunto de filas relacionadas con la fila actual sin colapsarlas en una sola fila, a diferencia de GROUP BY.
ROW_NUMBER
Función de ventana que asigna números únicos a cada una de las filas de un conjunto de resultados.
RANK
Función de ventana que permite empates en la clasificación y deja espacios en la numeración subsiguiente.
DENSE_RANK
Función de ventana que permite empates en la clasificación pero no deja espacios en la numeración.
LAG()
Función que permite acceder al valor de una fila anterior sin necesidad de realizar un self join.
WHERE vs HAVING
WHERE filtra filas antes del agrupamiento, mientras que HAVING filtra grupos después de ejecutar el GROUP BY.
INNER JOIN vs LEFT JOIN
INNER JOIN devuelve solo registros con coincidencia en ambas tablas; LEFT JOIN mantiene todos los registros de la tabla izquierda aunque no tengan coincidencia.
CTE (Common Table Expression)
Resultado temporal con nombre dentro de una query que ayuda a organizar y hacer más legibles consultas complejas.
Índice
Estructura que permite encontrar datos más rápidamente sin recorrer toda la tabla, aunque ocupa espacio extra y puede encarecer las escrituras.
OLTP (Online Transaction Processing)
Sistema orientado a operaciones transaccionales, muchas operaciones pequeñas, baja latencia y alta concurrencia.
OLAP (Online Analytical Processing)
Sistema orientado a análisis sobre grandes volúmenes de datos, consultas complejas, agregaciones e históricos.
Data Warehouse
Sistema especializado en almacenar datos estructurados y optimizados para el análisis, como BigQuery.
Data Lake
Repositorio para grandes cantidades de datos estructurados, semi-estructurados y no estructurados, conservando normalmente los datos en formato raw.
Data Lakehouse
Arquitectura que busca combinar la flexibilidad de un Data Lake con las capacidades analíticas y de gobierno de un Data Warehouse.
ETL (Extract, Transform, Load)
Proceso donde los datos se transforman antes de ser cargados en el destino final.
ELT (Extract, Load, Transform)
Proceso donde los datos se cargan primero al destino y luego se transforman aprovechando el poder de procesamiento de dicho destino.
Apache Spark
Framework de procesamiento distribuido para grandes volúmenes de datos que soporta workloads de batch, streaming y SQL.
Driver (en Spark)
Proceso principal que ejecuta el programa Spark, crea la SparkSession, construye el plan de ejecución y coordina a los Executors.
Executor (en Spark)
Proceso que corre en los workers, ejecuta las tareas asignadas por el Driver y puede mantener datos en memoria.
Partición (en Spark)
Cada una de las partes de un dataset que Spark es capaz de procesar de forma paralela.
Transformations vs Actions (en Spark)
Las Transformations generan nuevos datasets (ej. filter), mientras que las Actions desencadenan la ejecución real (ej. count, write).
Lazy Evaluation
Estrategia de Spark que consiste en no ejecutar las transformaciones inmediatamente, sino construir un plan que se ejecuta solo cuando llega una acción.
DAG (Directed Acyclic Graph)
Representación de las operaciones y dependencias que Spark utiliza para construir su plan de ejecución.
Shuffle
Redistribución costosa de datos entre particiones que ocurre en operaciones como groupBy, joins o distinct.
repartition() vs coalesce()
repartition() redistribuye datos generando shuffle; coalesce() permite reducir particiones evitando normalmente un shuffle completo.
Broadcast Join
Técnica donde una tabla pequeña se distribuye a todos los Executors para evitar un shuffle de grandes dimensiones con una tabla mayor.
Data Skew
Situación donde algunos valores tienen muchos más registros que otros, produciendo particiones desbalanceadas y tareas lentas (stragglers).
BigQuery
Data Warehouse analítico administrado de Google Cloud, diseñado para realizar consultas a gran escala.
Partitioning (en BigQuery)
Dividir una tabla en segmentos (ej. por fecha) para reducir la cantidad de datos leídos en las consultas.
Clustering (en BigQuery)
Organizar los datos dentro de las particiones según columnas específicas para mejorar la eficiencia de filtros y agrupaciones.
Pub/Sub
Servicio de mensajería y event streaming que desacopla productores y consumidores mediante el uso de Topics y Subscriptions.
At-least-once delivery
Garantía de entrega que indica que un mensaje puede entregarse más de una vez, lo que requiere que el consumidor sea idempotente.
Idempotencia
Propiedad que asegura que procesar una misma operación una o varias veces produce siempre el mismo resultado final.
Dead Letter Topic
Destino especializado para enviar mensajes que no pudieron ser procesados exitosamente tras varios intentos.
Apache Beam
Modelo y framework para definir pipelines de procesamiento batch y streaming que pueden ejecutarse en distintos runners.
Google Cloud Dataflow
Servicio administrado de GCP diseñado para ejecutar pipelines, especialmente aquellos construidos con Apache Beam.
PCollection
Colección distribuida de datos dentro de un pipeline de Beam, la cual puede ser bounded (batch) o unbounded (streaming).
ParDo
Transformación fundamental de Apache Beam utilizada para aplicar una función de procesamiento a cada elemento de los datos.
Event Time vs Processing Time
Event time es el momento en que ocurrió el evento; processing tiempo es el momento en que el sistema lo procesó.
Watermark
Estimación del punto temporal hasta el cual probablemente han llegado todos los eventos de un determinado event time.
Airflow
Plataforma utilizada para orquestar workflows y gestionar las dependencias entre distintas tareas.
dbt (data build tool)
Herramienta enfocada en transformar y modelar datos directamente dentro del Data Warehouse utilizando principalmente SQL.
NoSQL
Familia de bases de datos que no siguen el modelo relacional tradicional, permitiendo esquemas flexibles (documentos, clave-valor, etc.).
Dimensiones de Calidad de Datos
Atributos que incluyen Accuracy, Completeness, Consistency, Uniqueness, Validity y Timeliness.
Schema Evolution
Capacidad de un pipeline para adaptarse a cambios en el esquema de los datos a lo largo del tiempo sin interrumpir su funcionamiento.
IAM (Identity and Access Management)
Sistema que controla qué identidades tienen permisos específicos sobre determinados recursos.
Least Privilege
Principio de seguridad que consiste en otorgar únicamente los permisos mínimos necesarios para realizar una tarea.
Infrastructure as Code (IaC)
Práctica de definir y gestionar la infraestructura de TI mediante archivos de configuración o código en lugar de procesos manuales.
Terraform
Herramienta que permite versionar, automatizar y reproducir la infraestructura mediante código.
CI/CD
CI automatiza la integración y validación (tests); CD automatiza el despliegue hacia los diferentes ambientes.