2010-12-19 13 views
6

Cuando los archivos se transfieren a nodos utilizando el mecanismo de caché distribuida en una tarea de transmisión Hadoop, ¿el sistema elimina estos archivos después de completar un trabajo? Si se eliminan, lo que supongo que son, ¿hay alguna manera de hacer que la memoria caché permanezca para múltiples trabajos? ¿Funciona de la misma manera en Elastic Mapreduce de Amazon?Duración de la memoria caché distribuida en Hadoop

Respuesta

5

Estaba cavando en el código fuente, y parece que los archivos se eliminan por TrackerDistributedCacheManager aproximadamente una vez por minuto cuando su recuento de referencia cae a cero. El TaskRunner libera explícitamente todos sus archivos al final de una tarea. Tal vez deberías editar TaskRunner para no hacer esto, y controlar la memoria caché a través de medios más explícitos a ti mismo?

+0

Eso es una gran ayuda. Creo que podría haber otras formas de cargar archivos en los nodos que exploraré. El caché distribuido era solo el método con el que estaba familiarizado. Gracias por la referencia del código, es increíblemente útil. –

Cuestiones relacionadas