Está en la página 1de 10

4.

Comportamiento de Mesos

Rendimiento de Mesos bajo diversas condiciones de trabajo

Comprender el comportamiento general

Escalabilidad Duraciones Preferencia


elástica de los homogéneas equitativa de
frameworks. de las tareas. los nodos.

Distribución equitativa de recursos

Manejo de duraciones de tareas heterogéneas

Limitaciones del modelo de Mesos


4.1. Definiciones, métricas y supuestos

Métricas: Caracterización de Cargas de Trabajo: Tipos de Recursos:

Tiempo de inicio
del framework Dimensiones: Frameworks:
Obligatorios
CPU
Tiempo de
Elasticidad Elástico: Hadoop,
finalización del Preferidos
Dryad
trabajo Acceso local a
Distribución de la datos
Utilización del duración de las Rígido: MPI
sistema tareas

Suposiciones: - Asignación garantizada de recursos


- Igualdad de recursos y ejecución de una sola tarea por framework
4.2 Tareas Homogéneas

En este análisis, se considera:


Tiempo Tiempo máximo de
 1 clúster con n slots
constante inicio: T
 1 framework, f, que tiene derecho
a k slots.

Se analizan dos distribuciones de Tiempo de


duración de tareas: inicio del
framework
 Constante y exponencial.

Suponiendo que la duración media


de la tarea sea T, y que el framework Tiempo Tiempo de inicio
f ejecuta un trabajo que requiere un exponencial esperado: T ln k
tiempo total de computación de kT.
Trabajos Tiempo de finalización
Elásticos esperado: (1 + )T
Tiempo de
Finalización
del Trabajo
Tiempo Duraciones de Tareas
exponencial Exponenciales: (ln k + )T

Trabajos Utilización completa de


Elásticos slots

Utilización
del Sistema
Utilización ligeramente
Trabajos
inferior debido al tiempo
Rígidos
de inicio
4.3 Preferencias de los frameworks

Preferencia de nodos para realizar tareas.

Todos los frameworks obtienen sus No todas las preferencias pueden


preferencias ser satisfechas

Desafío en Mesos Falta de información sobre las preferencias de los frameworks

Solución Programación de lotería basados en probabilidades

Impacto en los
tiempos de inicio Los tiempos de inicio y finalización permanecen constantes
y finalización
4.3 Tareas heterogéneas

Desafío para los frameworks con tareas cortas

Espera prolongada por recursos ocupados por tareas largas

Mitigación
Reserva de recursos para tareas cortas en cada nodo

Establecimiento de límites de tiempo máximos para tareas largas

Permite a los frameworks elegir el uso de estos recursos

Similar a política de cola separada para trabajos cortos en


clústeres de HPC
4.5 Incentivos de Framework

Incentivos para Mejorar la Eficiencia de los Trabajos en Mesos

No Aceptar Recursos
Tareas Cortas Escalar Elásticamente
Desconocidos

• Asignación • Comenzar y • Mantenimiento


rápida de completar de una
recursos trabajos más asignación
rápidamente eficiente
• Minimización del
trabajo • Optimización de • Evitar
desperdiciado en la utilización de desperdiciar
caso de fallas recursos recursos
4.5 Limitaciones de la programación distribuida

Fragmentación:

 Desafío con demandas de recursos heterogéneas.


 Ineficiencia en la asignación de recursos.
 Se puede mitigar en clústeres con nodos grandes y tareas pequeñas.

Condiciones de Framework Interdependientes:

 Posibles escenarios donde las dependencias entre frameworks afectan el rendimiento.


 Raro en la práctica, pero puede suceder.

Complejidad del Framework:

 Uso de ofertas de recursos puede complicar la programación de los frameworks.


 Las políticas de programación existentes son adaptables al modelo de ofertas de
recursos.
5 Implementacion
Desarrollado en C++ con alrededor de 10,000 líneas de código
Compatible con Linux, Solaris y OS X
Admite frameworks en C++, Java y Python
Utiliza una biblioteca llamada libprocess para simplificar la
programación

5.1 Adaptacion de puertos Hadoop a Mesos

 La adaptación de Hadoop para Mesos necesitó pocos cambios, ya que sus tareas
se integraron bien en Mesos.

 Se desarrollo un planificador de Hadoop que se conecta a Mesos y asigna tareas.

 Usamos la programación diferida para la localidad de los datos.

 La adaptación fue en 1500 líneas de código.


5.2 Adaptacion de puertos Torque y MPI
 Adaptación de Torque como framework en Mesos, con planificador y ejecutor en Python.

 Mínimos cambios en el código de Torque para la escalabilidad elástica.

 Creación de un envoltorio de MPI de Mesos para ejecutar trabajos MPI directamente.

5.3 Spark Framework


 Spark como Ejemplo de Framework Especializado: Se desarrolló Spark como respuesta
a la necesidad de mejorar el rendimiento de trabajos iterativos en Hadoop.

 Solución Propuesta por Spark: Spark utiliza la capacidad de almacenamiento en caché de


Mesos para almacenar en memoria en un conjunto de datos en cada nodo.

 Tolerancia a Fallos en Spark: La caché de datos en Spark permite recuperar los datos
necesarios para continuar el proceso de manera eficiente.

También podría gustarte