Skip to content

~/bda/m00 $ cat index.md

  • Big Data Aplicado
  • M00

Fundamentos de terminal y automatización

Presentación y recorrido de los apuntes.

M00 construye la base operativa para el resto de la asignatura. Tiene una duración prevista de 8 sesiones de 1 hora y se organiza en apuntes independientes para poder detenerse, practicar y revisar cada habilidad antes de combinarla con la siguiente.

Se utiliza un mismo contenedor Debian con la carpeta local bda-m00 compartida como /bda-m00. El trabajo queda accesible tanto desde el anfitrión como desde Debian; no se crea un volumen nombrado independiente para estos archivos.

El recorrido empieza por la terminal y el sistema de archivos, continúa con los flujos de texto y las expresiones regulares, y dedica dos sesiones completas a Bash. Solo después se aborda cron, que automatiza tareas sencillas pero no sustituye a Airflow: los DAG, dependencias, reintentos e historial se desarrollarán en M02.

  • Usar el terminal Linux para orientarse, trabajar con archivos y consultar ayuda de forma autónoma.
  • Gestionar usuarios, grupos y permisos de laboratorio y ejecutar scripts de forma segura.
  • Construir y comprobar flujos de texto mediante redirecciones, tuberías y herramientas básicas de filtrado.
  • Escribir scripts Bash legibles, parametrizables y trazables.
  • Programar con cron una tarea local sencilla, registrando sus resultados y evitando solapamientos.
  • Entregar un componente local reutilizable para el proyecto transversal, sin anticipar aún la ingesta con API, Kafka o Airflow.
Documento Contenido principal Sesiones
01. Terminal, ficheros y permisos Prompt, rutas, archivos, permisos, usuarios, grupos y SSH desde el anfitrión al mismo contenedor. 2
02. Flujos de texto y expresiones regulares Flujos estándar, redirecciones, tuberías, campos, ordenación, transformaciones con tr/sed y regex. 2
03. Bash scripting Variables, condiciones de archivos/cadenas/números, for y contadores, aritmética, funciones, entrada, logs y ShellCheck. 2
04. Cron y automatización crontab, entorno, rutas, registros, bloqueos y diagnóstico. 1
05. Proyecto: captura local Capturador por etapas, pruebas reunidas, CSV, logs y cron con bloqueo; versionado desde la carpeta de trabajo y entrega en el repositorio privado de GitHub crypto-data-pipeline con acceso al docente. 1

Los ejercicios abiertos se valoran por sus evidencias y justificación, no por una única respuesta literal.

Los bancos recuperados del curso anterior amplían las opciones de práctica presencial; no convierten todos sus enunciados en entregas obligatorias ni en horas autónomas añadidas. Se mantienen las ocho horas: la selección concreta del banco corresponde al docente. SSH se practica entre anfitrión y el mismo contenedor, además de la lectura de configuración sin conectar; Git conserva el código y permite entregarlo en un repositorio privado de GitHub, con invitación al docente; ramas e integración quedan como consulta.

Sesiones Bloque Se apoya en Prepara
1–2 Terminal, ficheros y permisos Experiencia previa con sistemas operativos. Flujos de datos y scripts ejecutables.
3–4 Flujos de texto y regex Archivos y salida de comandos. Validación simple de entradas y registros.
5–6 Bash scripting Comandos, rutas y flujos. Automatización trazable.
7 Cron Script probado manualmente. Orquestación recuperable con Airflow en M02.
8 Proyecto Todos los bloques anteriores. Ingesta de datos y procesamiento posterior.

El entregable acumulativo de M00 es una captura local de cotización simulada, formada por un script Bash parametrizable, un CSV de datos raw, registros de ejecución y una tarea programada con cron. No representa todavía una ingesta real de mercado: M02 sustituirá esta simulación por una fuente externa, un contrato de evento, Kafka y Airflow.

En M01, el CSV y los registros de M00 proporcionarán una muestra local para razonar sobre formato y persistencia antes de abordar la ingesta de M02.

El laboratorio local permite demostrar validación de argumentos, separación entre datos y logs, códigos de salida y prevención de solapamientos. No permite demostrar tolerancia a fallos, alta disponibilidad o escalado: esas propiedades requieren componentes distribuidos que se estudiarán más adelante.

Relación con resultados de aprendizaje y criterios de evaluación

Section titled “Relación con resultados de aprendizaje y criterios de evaluación”
RA / CE Evidencia observable en M00 Documentos
RA0.a) S’han utilitzat comandaments. Navegación, gestión de archivos, permisos, flujos de texto y filtrado ejecutados y comprobados. 01 y 02
RA0.b) S’han realitzat tasques administratives desde el terminal. Usuarios, grupos y permisos comprobados con dos identidades; tarea cron registrada y diagnosticada. 01 y 04
RA0.c) S’han programat scripts. Script Bash parametrizable, revisado con ShellCheck, con logs, validaciones y códigos de salida. 03 y 05