Introducción a la Ingeniería de Datos - Módulo 3: Resumen de la Semana 3

Descripción

En esta semana, profundizaremos en la construcción de una buena arquitectura de datos. Aprenderemos cómo la arquitectura de datos se integra en el contexto más amplio de la arquitectura empresarial y exploraremos ejemplos específicos de arquitectura. También discutiremos principios orientadores para pensar como un arquitecto de datos.

Contenidos Clave

  1. Arquitectura de Datos y Arquitectura Empresarial
  2. La arquitectura de datos es una parte fundamental de la arquitectura empresarial de una organización.
  3. Pensar como un arquitecto es crucial para el éxito en el trabajo de un ingeniero de datos.

  4. Ejemplos de Arquitectura

  5. Se presentarán ejemplos específicos de arquitecturas de datos.
  6. Se discutirá cómo traducir las necesidades de los interesados en decisiones tecnológicas para los sistemas de datos.

  7. Principios Orientadores

  8. Se compartirán principios que ayudarán a desarrollar una mentalidad arquitectónica.

  9. Laboratorio Práctico

  10. Evaluación de compensaciones en aspectos como:
  11. Análisis de una arquitectura de datos en la nube de AWS.

  12. Marco de Trabajo Bien Arquitectado de AWS

  13. Exploración de un conjunto de principios que ayudan a diseñar sistemas de datos robustos y efectivos.

Objetivos de Aprendizaje

Al final de la semana, los participantes estarán equipados con herramientas útiles para todas las etapas de su trayectoria en ingeniería de datos.

Conclusión

Prepárate para un aprendizaje profundo sobre la arquitectura de datos y cómo aplicar estos conceptos en el mundo real. ¡Únete al próximo video para comenzar!


Introducción a la Arquitectura de Datos

Descripción

En este documento se resumen los conceptos clave sobre la arquitectura de datos y su relación con la arquitectura empresarial, así como la importancia de la toma de decisiones flexibles y reversibles en el contexto de la ingeniería de datos.

Arquitectura Empresarial

La arquitectura empresarial se define como el diseño de sistemas que apoyan el cambio en una organización, logrado a través de decisiones flexibles y reversibles, evaluando cuidadosamente los compromisos. Esta definición se alinea estrechamente con la arquitectura de datos, que se define como el diseño de sistemas para satisfacer las necesidades de datos en evolución de una empresa.

Dominios de la Arquitectura Empresarial

La arquitectura empresarial abarca varios dominios, que se pueden clasificar en cuatro áreas principales:

Dominio Descripción
Arquitectura de Negocios Estrategia de producto o servicio y modelo de negocio de la empresa.
Arquitectura de Aplicaciones Estructura e interacción de las aplicaciones clave que satisfacen las necesidades del negocio.
Arquitectura Técnica Componentes de software y hardware necesarios para soportar la implementación de sistemas de negocio.
Arquitectura de Datos Soporte a las necesidades de datos en evolución de la empresa.

Gestión del Cambio

La gestión del cambio es un concepto crucial en la arquitectura empresarial y de datos. Las necesidades de una organización están en constante evolución, y la arquitectura de datos debe adaptarse a esos cambios.

Decisiones de Puerta de Una Vía y Dos Vías

Jeff Bezos introdujo la idea de decisiones de puerta de una vía y dos vías:

Importancia de las Decisiones Reversibles

Las decisiones reversibles permiten a las organizaciones iterar y mejorar rápidamente cómo recopilan, utilizan y almacenan datos. La toma de decisiones flexible y reversible es fundamental para la arquitectura empresarial y de datos.

Rol del Ingeniero de Datos

Los ingenieros de datos deben pensar como arquitectos, creando soluciones técnicas que apoyen directamente los objetivos comerciales. La arquitectura no se trata solo de mapear procesos, sino de resolver problemas comerciales y crear nuevas oportunidades.

Ley de Conway

Antes de avanzar a los principios de una buena arquitectura de datos, es importante mencionar la Ley de Conway, que influye en la arquitectura de todos los sistemas de datos. Esta ley sugiere que la estructura de una organización afecta la forma en que se diseñan sus sistemas.


Este resumen proporciona una visión general de la arquitectura de datos y su contexto dentro de la arquitectura empresarial, destacando la importancia de la flexibilidad y la adaptabilidad en la toma de decisiones.


Ley de Conway en la Ingeniería de Datos

Descripción

En este documento se presenta un resumen de la Ley de Conway, un principio fundamental que influye en la arquitectura y los sistemas de datos dentro de las organizaciones. Se explora cómo la estructura de comunicación de una organización afecta el diseño de sus sistemas.

Ley de Conway

La Ley de Conway, formulada por Melvin Conway, establece que:

"Cualquier organización que diseña un sistema producirá un diseño cuya estructura es una copia de la estructura de comunicación de la organización."

Ejemplo Práctico

Consideremos una empresa con cuatro departamentos: ventas, marketing, finanzas y operaciones. Si estos departamentos operan de manera aislada, sus patrones de comunicación también lo serán. Esto resultará en la creación de sistemas de datos igualmente aislados:

Comunicación Interdepartamental

Si, en cambio, los departamentos se comunican de manera transversal, comparten ideas y colaboran, los sistemas de datos que desarrollen reflejarán esta cultura de colaboración. Esto resulta en un sistema más integrado y eficiente.

Implicaciones para los Ingenieros de Datos

Como ingeniero de datos, es crucial entender que:

  1. Estructura de Comunicación: Antes de diseñar una arquitectura de datos, es fundamental comprender la estructura de comunicación de la organización.
  2. Evitar Conflictos: Intentar construir una arquitectura de datos que choque con la estructura de comunicación de la empresa puede llevar a problemas significativos.

Recursos Adicionales

Para aquellos interesados en profundizar en la Ley de Conway, se ha incluido un enlace en la sección de recursos al final de la semana.

Conclusión

La Ley de Conway es un principio poderoso que resalta la importancia de la comunicación en el diseño de sistemas. En el próximo video, se explorarán los principios clave de una buena arquitectura de datos.


Principios de una Buena Arquitectura de Datos

Descripción

En este documento se resumen los principios fundamentales que deben considerarse al abordar la arquitectura de datos. Estos principios se agrupan en tres categorías y se discuten en detalle, centrándose en su impacto en la organización y la evolución de la arquitectura a lo largo del tiempo.

Principios de Arquitectura de Datos

Grupo 1: Impacto en la Organización

  1. Elegir Componentes Comunes con Sabiduría
  2. La elección de componentes y prácticas comunes es crucial para su uso en toda la organización.
  3. Ejemplos de componentes comunes incluyen:
  4. Las plataformas en la nube son ideales para adoptar estos componentes, permitiendo la separación de almacenamiento computado, lo que facilita el acceso a los datos por diferentes equipos.

  5. La Arquitectura es Liderazgo

  6. Un arquitecto de datos debe identificar los componentes comunes adecuados en consulta con los miembros de la organización.
  7. Es importante evitar un enfoque de "talla única" que pueda obstaculizar la productividad.
  8. A medida que se adquiere experiencia, se puede asumir un rol de mentoría y capacitación sobre estos componentes.

Grupo 2: Proceso Evolutivo

Grupo 3: Prioridades No Escritas

Conclusión

La arquitectura de datos no solo se trata de elegir las herramientas adecuadas, sino también de fomentar la colaboración entre equipos y adaptarse a las necesidades cambiantes de la organización. En el próximo video, se explorarán los principios relacionados con la flexibilidad en la arquitectura.


Introducción a la Ingeniería de Datos - Módulo 3: Siempre Arquitectando

Descripción

En este módulo, se exploran conceptos clave sobre la toma de decisiones en la arquitectura de sistemas de datos, haciendo énfasis en la importancia de las decisiones reversibles y el uso de interfaces de programación de aplicaciones (APIs). Se discute cómo estas prácticas permiten a los equipos adaptarse y evolucionar en un entorno tecnológico en constante cambio.

Conceptos Clave

Puertas Unidireccionales y Bidireccionales

Mandato de API de Amazon

Importancia de las APIs

Principios de Arquitectura

  1. Tomar Decisiones Reversibles: Asegurarse de que las decisiones puedan ser deshechas si el resultado no es el esperado.
  2. Construir Sistemas Acoplados de Manera Flexible: Componentes que se pueden intercambiar fácilmente sin rediseñar todo el sistema.
  3. Siempre Estar Arquitectando: La arquitectura de datos debe evolucionar junto con las necesidades de la organización.

Evolución de la Arquitectura de Datos

Conclusión

La capacidad de adaptarse y evolucionar es fundamental en la ingeniería de datos. En el próximo video, se abordarán las mejores prácticas relacionadas con el costo, la seguridad, la escalabilidad y los modos de falla de los sistemas que se construyen.

Recursos


Introducción a la Ingeniería de Datos: Módulo 3 - Cuando tus Sistemas Fallan

Descripción

En este módulo, se abordan los principios fundamentales para construir sistemas de datos que no solo satisfacen las necesidades de los interesados, sino que también son escalables y seguros. Se enfatiza la importancia de anticipar fallos y se presentan conceptos clave como disponibilidad, confiabilidad y durabilidad de los sistemas de datos.

Principios Clave

  1. Planificación para el fracaso
  2. Arquitectura para la escalabilidad
  3. Priorizar la seguridad
  4. Adoptar FinOps

Conceptos Importantes

Disponibilidad

Confiabilidad

Durabilidad

Objetivos de Recuperación

Seguridad en los Sistemas

Costos y Oportunidades

FinOps y Escalabilidad

Resumen

Planificar para el fracaso, arquitectar para la escalabilidad, priorizar la seguridad y adoptar FinOps son principios esenciales para servir mejor a las necesidades de la organización, tanto en situaciones normales como en casos de fallo.

Próximo Tema

En el siguiente video, se explorarán enfoques arquitectónicos específicos para diferentes tipos de sistemas de datos, centrándose en arquitecturas por lotes.


Introducción a las Arquitecturas por Lotes en Ingeniería de Datos

Descripción

En este documento se resumen los conceptos clave sobre las arquitecturas de procesamiento por lotes, un enfoque tradicional en la ingeniería de datos. Se discutirán los patrones de arquitectura, las diferencias entre ETL y ELT, y consideraciones importantes al diseñar sistemas de datos.

Contenidos

1. Procesamiento por Lotes

El procesamiento por lotes es un enfoque tradicional donde se ingesta, transforma y almacena datos en bloques o lotes. Este método es más práctico cuando el análisis en tiempo real no es crítico.

Ejemplo

En una empresa de comercio electrónico, un analista de datos podría estar interesado en analizar las ventas diarias de un producto específico. En este caso, se podría establecer una arquitectura por lotes que ingeste y procese los datos una vez al día.

2. Patrones de Arquitectura

2.1. ETL (Extract, Transform, Load)

2.2. ELT (Extract, Load, Transform)

3. Uso de Datos

Después de procesar los datos, se sirven para diferentes casos de uso, que pueden incluir: - Análisis - Aprendizaje automático - Reverse ETL: donde los datos procesados se envían de vuelta a los sistemas de origen.

4. Data Marts

Un data mart es un subconjunto más refinado de un almacén de datos, enfocado en un departamento o área de negocio específica. Facilita el acceso a los datos para analistas y la creación de informes.

Ejemplo de Data Marts

5. Consideraciones para la Arquitectura de Datos

Al diseñar una arquitectura de datos, es importante considerar:

6. Conclusión

Las decisiones tecnológicas al construir sistemas de datos presentan riesgos y oportunidades que pueden agregar valor a la organización. En el próximo video, se explorarán arquitecturas de streaming.


Este documento proporciona una visión general de las arquitecturas por lotes en la ingeniería de datos, destacando su importancia y las consideraciones clave al implementarlas.


Arquitecturas de Streaming en Ingeniería de Datos

Descripción

En este documento se resumen los conceptos clave sobre arquitecturas de streaming en el contexto de la ingeniería de datos, abordando las diferencias entre procesamiento por lotes y en tiempo real, así como las arquitecturas Lambda y Kappa. También se discuten las herramientas y enfoques actuales para manejar datos en tiempo real y por lotes.

Conceptos Clave

  1. Datos como Eventos:
  2. Los datos se producen en forma de eventos continuos, como clics en un sitio web o mediciones de sensores.
  3. Los datos pueden ser procesados en lotes o en tiempo real.

  4. Procesamiento por Lotes vs. Streaming:

  5. Procesamiento por Lotes: Se acumulan datos y se procesan en intervalos de tiempo predefinidos o cuando se alcanza un umbral de tamaño.
  6. Streaming: Los datos se ingieren y se proporcionan a sistemas downstream de manera continua y casi en tiempo real, a menudo en menos de un segundo.

  7. Componentes de un Sistema de Streaming:

  8. Productor: Fuente de datos (ej. datos de clics, dispositivos IoT).
  9. Consumidor: Servicio o aplicación que procesa los datos (ej. un lago de datos o un almacén de datos).
  10. Broker de Streaming: Coordina los datos entre productores y consumidores.

Evolución de las Arquitecturas

Arquitectura Lambda

Arquitectura Kappa

Herramientas y Enfoques Actuales

Principios de Arquitectura de Datos

Conclusión

La ingeniería de datos moderna enfrenta el desafío de unificar el procesamiento por lotes y el streaming. Las arquitecturas Lambda y Kappa han proporcionado inspiración, pero los ingenieros de datos deben seguir innovando y adaptándose a las nuevas herramientas y enfoques para manejar estos desafíos.

Próximo Tema

En el siguiente video se abordará la arquitectura para el cumplimiento normativo en sistemas de datos.


Arquitectura para el Cumplimiento Normativo

Descripción

Este documento resume los conceptos clave sobre la importancia del cumplimiento normativo en la ingeniería de datos, destacando regulaciones relevantes como el GDPR y la HIPAA, y su impacto en el trabajo de un ingeniero de datos.

Introducción

El cumplimiento normativo puede parecer un tema aburrido, pero es crucial para los ingenieros de datos. La falta de cumplimiento puede resultar en demandas y multas significativas para las organizaciones. Este documento aborda las regulaciones más relevantes y cómo los ingenieros de datos deben adaptarse a ellas.

Regulaciones Clave

1. Reglamento General de Protección de Datos (GDPR)

2. Ley de Portabilidad y Responsabilidad de Seguros de Salud (HIPAA)

3. Ley Sarbanes-Oxley

Consideraciones para Ingenieros de Datos

Conclusión

El cumplimiento normativo es un aspecto esencial en la arquitectura de datos. Los ingenieros de datos deben estar al tanto de las regulaciones que afectan su trabajo y construir sistemas que cumplan con las normativas actuales y futuras. En la próxima lección, se explorarán las tecnologías adecuadas para la arquitectura de datos.

Resumen de Regulaciones

Regulación Área de Aplicación Requisitos Clave
GDPR Protección de Datos Consentimiento, eliminación de datos
HIPAA Datos de Salud Protección de datos sensibles
Sarbanes-Oxley Datos Financieros Informes financieros, mantenimiento de registros

Tareas para Ingenieros de Datos

Recuerda que el cumplimiento normativo es parte integral de la ingeniería de datos y debe ser considerado en cada etapa del desarrollo de sistemas.


Elección de Herramientas y Tecnologías en Ingeniería de Datos

Descripción

En esta lección, se abordará cómo seleccionar las herramientas y tecnologías adecuadas para construir una arquitectura de datos efectiva. Se discutirá la importancia de considerar los compromisos entre diferentes opciones de diseño y cómo estas decisiones impactan en la calidad de los productos de datos.

Contenido

1. Importancia de la Arquitectura de Datos

2. Opciones de Herramientas y Tecnologías

Tipos de Herramientas

Tipo de Herramienta Descripción
Open Source Software de código abierto, accesible y modificable.
Managed Open Source Soluciones de código abierto gestionadas por terceros.
Software Propietario Soluciones comerciales con soporte y características específicas.

3. Consideraciones Clave

4. Optimización de Costos

5. Construcción para el Presente y Futuro

Conclusión

La elección de herramientas y tecnologías es un proceso crítico en la ingeniería de datos. Es esencial tener en cuenta los principios de una buena arquitectura de datos y los ciclos de vida de la ingeniería de datos para asegurar el éxito en la implementación de soluciones efectivas.

Próximos Pasos

Únete al siguiente video para profundizar en estos temas y prepararte para tomar decisiones informadas en la elección de herramientas y tecnologías.


Introducción a la Ingeniería de Datos - Módulo 3: Sistemas de Datos en la Nube

Descripción

En este módulo, se explora la evolución de los sistemas de datos desde soluciones locales (on-premises) hacia plataformas en la nube. Se discuten las ventajas y desventajas de cada enfoque, así como las tendencias actuales en la industria.

Contenido

Evolución de los Sistemas de Datos

Ventajas de la Nube

Tendencias en la Industria

Consideraciones para Ingenieros de Datos

Próximo Tema

Conclusión

La industria se está moviendo hacia un mayor uso de la nube y menos hacia sistemas on-premises. Como aspirante a ingeniero de datos, es fundamental centrarse en el aprendizaje de la construcción de sistemas de datos en la nube.


Este documento resume las ideas clave del video sobre la evolución de los sistemas de datos y la importancia de la nube en la ingeniería de datos moderna.


Monolitos vs Sistemas Modulares en Ingeniería de Datos

Descripción

En este documento se exploran las diferencias entre arquitecturas monolíticas y modulares en el contexto de la ingeniería de datos. Se discuten las ventajas y desventajas de cada enfoque, así como su impacto en la flexibilidad y mantenimiento de los sistemas.

Arquitectura Monolítica

Sistemas Modulares

Comparación de Arquitecturas

Característica Monolítica Modular
Acoplamiento Fuerte Débil
Mantenimiento Difícil a medida que crece Más fácil, actualizaciones independientes
Despliegue Único Servicios individuales
Flexibilidad Limitada Alta
Ejemplo de uso Pipeline ETL monolítico Microservicios

Conclusión

La elección entre una arquitectura monolítica y modular depende de las necesidades específicas del proyecto y del equipo. La tendencia actual en la ingeniería de datos se inclina hacia un enfoque modular, que permite una mayor flexibilidad y adaptabilidad a los cambios tecnológicos.

Próximos Pasos

En el siguiente video, se abordará la optimización de costos en la implementación de arquitecturas modulares.


Optimización de Costos y Valor Empresarial en Ingeniería de Datos

Descripción

En este documento se resumen los conceptos clave sobre la optimización de costos en el ciclo de vida de la ingeniería de datos, centrándose en el Costo Total de Propiedad (TCO), el Costo Total de Oportunidad de Propiedad (TOCO) y la importancia de FinOps. Se discuten las implicaciones de las decisiones tecnológicas en el presupuesto y el retorno de la inversión.

Contenido

1. Introducción

En cada etapa del ciclo de vida de la ingeniería de datos, existen múltiples herramientas y tecnologías disponibles. Cada elección conlleva un costo que no solo incluye el precio del software o servicio, sino también costos de implementación y costos de oportunidad.

2. Costo Total de Propiedad (TCO)

El TCO es el costo total estimado de un proyecto o iniciativa a lo largo de su ciclo de vida. Incluye:

Tabla 1: Comparación de Costos

Tipo de Costo Descripción
Costos Directos Gastos fácilmente identificables relacionados con el desarrollo.
Costos Indirectos Gastos no directamente atribuibles al desarrollo, como soporte y tiempo de inactividad.

3. Tipos de Gastos

Los gastos se dividen en dos categorías principales:

4. Costo Total de Oportunidad de Propiedad (TOCO)

El TOCO se refiere al costo de las oportunidades perdidas al elegir una herramienta o tecnología específica. Es más difícil de cuantificar, pero implica que cada elección excluye otras posibilidades.

5. Estrategias para Minimizar TCO y TOCO

Para minimizar el TCO y el TOCO, es crucial construir sistemas flexibles y desacoplados que sean fáciles de actualizar.

6. FinOps

FinOps se centra en minimizar los costos asociados con los sistemas de datos (TCO y TOCO) mientras se maximiza la generación de ingresos.

Estrategias de FinOps:

Conclusión

La elección de herramientas y tecnologías en ingeniería de datos tiene un impacto significativo en los costos y el retorno de la inversión. En el próximo video, se explorarán las compensaciones entre construir componentes de sistemas de datos propios y comprar soluciones prefabricadas.


Construir vs Comprar en Ingeniería de Datos

Descripción

En este documento se resumen las ideas y conceptos discutidos en el video "14_Build vs Buy" del curso de Introducción a la Ingeniería de Datos, Módulo 3. Se abordan las consideraciones sobre la elección de herramientas y tecnologías en la arquitectura de datos, así como las ventajas y desventajas de construir soluciones personalizadas frente a utilizar servicios existentes.

Contenido

Elección de Herramientas y Tecnologías

Consideraciones para Construir o Comprar

  1. Requerimientos del Sistema: Dependiendo de las necesidades, puede ser necesario construir o personalizar herramientas.
  2. Opciones Disponibles:
  3. Soluciones completamente de código abierto.
  4. Opciones comerciales de código abierto (versiones gestionadas).
  5. Software y servicios propietarios no abiertos.

Parámetros Clave a Considerar

Recomendaciones

Conclusión

La decisión entre construir o comprar herramientas y tecnologías en ingeniería de datos debe basarse en un análisis cuidadoso de las capacidades del equipo, los costos involucrados y el valor que se puede obtener. En el próximo video, se explorarán las diferencias entre opciones sin servidor y con servidor para herramientas y tecnologías.

Tabla de Comparación de Opciones

Opción Ventajas Desventajas
Código Abierto Comunidad de soporte, personalización Requiere tiempo y recursos para mantenimiento
Comercial de Código Abierto Gestión simplificada, soporte profesional Costo potencialmente más alto
Propietario Soporte completo, fácil de implementar Menos flexibilidad, costos de licencia
Construcción desde cero Solución completamente adaptada a necesidades Alto costo y esfuerzo, riesgo de reinventar la rueda

Lista de Consideraciones

¡Únete al próximo video para explorar las diferencias entre opciones sin servidor y con servidor!


Opciones de Cómputo: Servidores, Contenedores y Serverless

Descripción

En este documento se resumen las principales ideas y conceptos sobre las opciones de cómputo disponibles para alojar aplicaciones de software, centrándose en tres enfoques: servidores, contenedores y soluciones serverless. Se discuten las diferencias, ventajas y desventajas de cada opción, así como consideraciones de costos y uso.

Introducción

Para alojar cualquier aplicación de software, se necesita un servidor, que es esencialmente una computadora o un conjunto de computadoras que proporciona recursos de cómputo como CPU, memoria (RAM), almacenamiento en disco, y posiblemente GPU y conectividad de red. Los servidores ofrecen recursos de cómputo a través de una red, generalmente a través de Internet.

Opciones de Cómputo

1. Servidores

2. Contenedores

3. Serverless

Consideraciones de Uso

Recomendaciones

Para la mayoría de las aplicaciones modernas de ingeniería de datos en la nube, se puede optar por herramientas serverless o contenedorizadas. Se recomienda comenzar con soluciones serverless y, si es necesario, pasar a contenedores y orquestación.

Conclusión

Es fundamental entender los detalles de la fijación de precios en la nube para predecir los costos de las implementaciones serverless y decidir si son más rentables que las opciones de servidor. La monitorización de las tasas de eventos, duración y costo por evento es crucial para modelar el costo total de los servicios utilizados.

Tabla Comparativa

Opción Responsabilidad del Usuario Escalabilidad Costo Ideal para
Servidor Alta Manual Fijo Aplicaciones complejas
Contenedor Moderada Automática Variable Aplicaciones modulares
Serverless Baja Automática Pago por uso Tareas simples y discretas

Lista de Recursos

Próximos Pasos

En el siguiente video, se explorarán los aspectos del ciclo de vida de la ingeniería de datos que influyen en la elección de herramientas y tecnologías para la arquitectura de datos.


Cómo los Subcorrientes Impactan tus Decisiones en Ingeniería de Datos

Descripción

En esta lección, se exploran los subcorrientes del ciclo de vida de la ingeniería de datos y su impacto en la elección de herramientas y tecnologías para construir una arquitectura de datos. Se revisan seis subcorrientes clave: seguridad, gestión de datos, operaciones de datos, arquitectura de datos, orquestación e ingeniería de software.

Subcorrientes del Ciclo de Vida de la Ingeniería de Datos

Subcorriente Consideraciones Clave
Seguridad - Comprender las características de seguridad de las herramientas.
- Implementar tecnologías de autenticación adecuadas.
- Usar software de organizaciones reputadas y comunidades de código abierto confiables.
Gestión de Datos - Preguntar cómo se implementan las prácticas de gobernanza de datos.
- Asegurarse de que los datos estén protegidos contra brechas.
- Verificar el cumplimiento con regulaciones de privacidad de datos como GDPR.
Operaciones de Datos - Evaluar las características de automatización y monitoreo de las herramientas.
- Entender el Acuerdo de Nivel de Servicio (SLA) del proveedor si se opta por un servicio gestionado.
Arquitectura de Datos - Buscar modularidad e interoperabilidad entre herramientas.
- La buena modularidad permite flexibilidad y desacoplamiento entre componentes.
Orquestación - Apache Airflow es el líder en orquestación, pero hay otras opciones como Prefect, Dagster y Mage.
- Comprender los objetivos de tu arquitectura de datos para elegir la herramienta adecuada.
Ingeniería de Software - Evaluar la capacidad y experiencia de tu equipo para decidir entre construir o usar herramientas existentes.
- Evitar el "trabajo pesado no diferenciado" que no agrega valor a la organización.

Conclusiones

Es fundamental tener en cuenta cada uno de estos subcorrientes al seleccionar herramientas y tecnologías para tu arquitectura de datos. A medida que avanzamos, se abordarán conceptos prácticos y se explorará el marco arquitectónico bien diseñado de AWS para evaluar las elecciones arquitectónicas en tu propia arquitectura de datos.

Próximos Pasos

Únete a la próxima lección para explorar el marco arquitectónico bien diseñado de AWS y evaluar las elecciones arquitectónicas para tu propia arquitectura de datos en AWS.


Introducción al Marco de Arquitectura Bien Diseñada de AWS

Descripción

En esta lección, se presenta el Marco de Arquitectura Bien Diseñada de AWS, que proporciona un conjunto de principios y mejores prácticas para construir arquitecturas escalables y robustas en la nube de AWS. Este marco complementa los principios y prácticas discutidos previamente en el curso sobre fundamentos de arquitectura de datos.

Contenido

Principios del Marco de Arquitectura Bien Diseñada

El Marco de Arquitectura Bien Diseñada de AWS se basa en varios principios que son esenciales para el diseño de una buena arquitectura de datos. Estos principios son:

  1. Excelencia Operacional
  2. Seguridad
  3. Fiabilidad
  4. Eficiencia del Rendimiento
  5. Optimización de Costos
  6. Sostenibilidad

Recursos Adicionales

Al buscar "AWS Well-Architected Framework", se pueden encontrar diversos recursos útiles, tales como:

Aplicación Práctica

En el próximo video, Morgan ofrecerá una introducción a los seis pilares clave de este marco y mostrará dónde se puede aprender más y practicar con él. Posteriormente, se realizará un ejercicio práctico en el laboratorio para aplicar los principios de una buena arquitectura de datos en la nube de AWS.

Conclusión

El Marco de Arquitectura Bien Diseñada de AWS es una guía valiosa para cualquier ingeniero de datos que busque construir arquitecturas efectivas y eficientes en la nube. La comprensión y aplicación de estos principios son fundamentales para el éxito en la ingeniería de datos.


Marco de Referencia Bien Arquitectado de AWS

Descripción

El Marco de Referencia Bien Arquitectado de AWS es una guía que ayuda a los arquitectos y desarrolladores a construir soluciones efectivas en la nube de AWS. Este marco se basa en la experiencia acumulada de AWS trabajando con miles de clientes y se centra en evaluar y mejorar las soluciones para asegurar que se construyan de manera correcta.

Pilares Clave del Marco de Referencia

El Marco de Referencia Bien Arquitectado se compone de seis pilares fundamentales:

Pilar Descripción
Excelencia Operacional Se enfoca en desarrollar y ejecutar cargas de trabajo de manera efectiva, monitoreando sistemas y mejorando procesos.
Seguridad Se centra en proteger datos, sistemas y activos utilizando tecnologías en la nube y fomentando una cultura de seguridad.
Confiabilidad Trata sobre el diseño de sistemas que funcionen correctamente y se recuperen rápidamente de fallos.
Eficiencia de Rendimiento Se basa en un enfoque basado en datos para construir arquitecturas de alto rendimiento y mantener la eficiencia.
Optimización de Costos Busca maximizar el valor empresarial al menor costo posible, utilizando herramientas como AWS Cost Explorer.
Sostenibilidad Se enfoca en reducir el consumo de energía y aumentar la eficiencia en todos los componentes del sistema.

Detalles de los Pilares

  1. Excelencia Operacional
  2. Desarrollar y ejecutar cargas de trabajo de manera efectiva.
  3. Monitorear sistemas para obtener información sobre las operaciones.
  4. Mejorar continuamente procesos y procedimientos.

  5. Seguridad

  6. Proteger datos y sistemas utilizando herramientas adecuadas.
  7. Fomentar una cultura de seguridad en el equipo.

  8. Confiabilidad

  9. Diseñar sistemas que funcionen correctamente y se recuperen de fallos.
  10. Planificar para fallos y adaptarse a cambios.

  11. Eficiencia de Rendimiento

  12. Evaluar la capacidad de recursos computacionales para satisfacer requisitos del sistema.
  13. Mantener la eficiencia a medida que cambian las demandas.

  14. Optimización de Costos

  15. Construir sistemas que ofrezcan el máximo valor empresarial al menor costo.
  16. Utilizar servicios como AWS Cost Explorer para recomendaciones de optimización.

  17. Sostenibilidad

  18. Considerar el impacto ambiental de las cargas de trabajo en la nube.
  19. Reducir el consumo de energía y aumentar la eficiencia.

Aplicación del Marco de Referencia

El Marco de Referencia Bien Arquitectado no proporciona diseños específicos para copiar, sino que actúa como un conjunto de principios y preguntas que facilitan conversaciones productivas sobre soluciones existentes. Esto permite diseñar y operar sistemas confiables, seguros, eficientes, rentables y sostenibles en la nube.

Lentes del Marco de Referencia

Existen aplicaciones específicas del Marco de Referencia llamadas "Lentes", que se centran en áreas, industrias o tecnologías particulares. Cada lente ofrece preguntas, mejores prácticas y planes de mejora específicos. Se recomienda explorar la Lente de Análisis de Datos, que se enfoca en consideraciones específicas de datos.

Recursos Adicionales

Para más información sobre cada uno de los pilares y para explorar la herramienta Bien Arquitectado que permite evaluar arquitecturas, se pueden seguir los enlaces proporcionados en la sección de recursos al final del curso.

Conclusión

Ahora es tu turno de aplicar los principios discutidos en tu propia arquitectura de datos en AWS. A través de los próximos videos, se te guiará en un ejercicio práctico para implementar estos conceptos. ¡Buena suerte!


Introducción al Laboratorio de Ingeniería de Datos

Descripción

En este laboratorio, se explorará la arquitectura de una aplicación web diseñada para servir datos analíticos a clientes externos. Se utilizarán instancias EC2 y se aplicarán principios de arquitectura de datos, así como el marco bien arquitectado de AWS. El objetivo es garantizar que la aplicación sea escalable, eficiente en el uso de recursos y segura.

Contenido del Laboratorio

Objetivos

Arquitectura de la Aplicación Web

La aplicación web está diseñada con una arquitectura de tres capas:

Capa Descripción
Capa de Datos Representada por un bucket S3, donde se extraen los datos.
Capa de Lógica Compuesta por instancias EC2 y un balanceador de carga (ALB) que procesa las solicitudes de los clientes.
Capa de Presentación Interfaz que muestra los resultados a los clientes, como los dashboards analíticos.

Detalles de la Capa de Lógica

Proceso del Laboratorio

  1. Acceso a la Consola de AWS: Iniciar el laboratorio en Coursera y acceder a la consola de gestión de AWS.
  2. Simulación de Tráfico: Generar tráfico hacia la aplicación web para evaluar su escalabilidad.
  3. Monitoreo de Recursos: Utilizar Amazon CloudWatch para monitorear la actividad de la red y los recursos de cómputo.
  4. Configuración de Instancias EC2: Ajustar las configuraciones para optimizar el rendimiento y los costos.
  5. Seguridad del Balanceador de Carga: Controlar el tráfico entrante a través de la aplicación.

Instrucciones

Conclusión

Este laboratorio proporcionará una comprensión práctica de cómo escalar y monitorear una aplicación web en AWS, aplicando principios de arquitectura de datos y optimización de recursos. En el siguiente video, se explorarán más detalles sobre la monitorización de los recursos de la aplicación.


Introducción a la Ingeniería de Datos - Módulo 3: Monitoreo de la Aplicación Web

Descripción

En este documento se resumen las tareas del laboratorio relacionadas con el monitoreo de instancias EC2 en un grupo de escalado automático y las actividades de red a través del balanceador de carga de aplicaciones. Se utilizarán herramientas como Amazon CloudWatch y Apache Benchmark para simular tráfico y monitorear el rendimiento de la aplicación.

Contenido

Tareas del Laboratorio

  1. Monitoreo de Instancias EC2
  2. Acceder a las instancias EC2 desde la consola de AWS.
  3. Localizar el balanceador de carga y obtener la dirección de la página web de la aplicación.

  4. Simulación de Tráfico

  5. Utilizar Apache Benchmark para realizar pruebas de estrés enviando múltiples solicitudes HTTP a la aplicación.

  6. Monitoreo de Recursos

  7. Usar Amazon CloudWatch para rastrear métricas de rendimiento, como la utilización de CPU y la actividad de red.

Pasos Detallados

1. Acceso a la Aplicación Web

2. Simulación de Tráfico con Apache Benchmark

3. Monitoreo de Recursos en Amazon CloudWatch

Gráficos de Monitoreo

Métrica Descripción
Utilización de CPU Muestra el uso de recursos para procesar las solicitudes.
Actividad de Red Entrante Monitorea el tráfico de datos que llega a la aplicación.
Actividad de Red Saliente Monitorea el tráfico de datos que sale de la aplicación.

Conclusiones

Próximos Pasos

En el siguiente video, se explorarán aspectos de seguridad, disponibilidad, escalabilidad y costos de la aplicación web.


Resumen del Video 21: Recorrido por el Laboratorio - Aplicando los Principios de la Ingeniería de Datos

Descripción

En este video, se presenta un recorrido por el laboratorio donde se aplican principios de arquitectura de datos para asegurar la seguridad, disponibilidad y escalabilidad de aplicaciones, optimizando costos. Se revisan configuraciones de seguridad, confiabilidad, optimización de costos y escalabilidad en un entorno de AWS.

Contenido

1. Seguridad

Ejemplo de Configuración

Puerto Protocolo Descripción
80 HTTP Acceso permitido
90 Privado Acceso bloqueado

2. Confiabilidad

3. Optimización de Costos

Ejemplo de Cambio de Instancia

Tipo de Instancia Capacidad de Memoria Costo
T3 Micro Alta Alto
T3 Nano Baja Bajo

4. Escalabilidad

Configuración de Política de Escalado

5. Pruebas de Estrés

Conclusión

Al finalizar el laboratorio, es importante seguir las instrucciones cuidadosamente y enviar el trabajo antes de que expire el entorno del laboratorio. Se recomienda revisar los videos de recorrido si es necesario.

Notas Finales