~/bda/m00 $ cat index.md
- Big Data Aplicado
- M00
Fundamentos de terminal y automatización
Presentación y recorrido de los apuntes.
Presentación
Section titled “Presentación”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.
Objetivos del módulo
Section titled “Objetivos del módulo”- 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
cronuna 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.
Materiales del módulo
Section titled “Materiales del módulo”| 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.
Secuencia de aprendizaje
Section titled “Secuencia de aprendizaje”| 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. |
Proyecto
Section titled “Proyecto”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 |