Apache HadoopEl equipo de Yahoo anunció que logró batir el record en el concurso anual GraySort, siendo ganador en 2 categorías. GraySort consiste en un conjunto de benchmarks, cada uno con sus propias reglas. Todos los benchmarks miden el tiempo para ordenar distinta cantidad de registros de 100 bytes cada uno (los primeros 10 bytes son la clave del registro, el resto el valor).

Para repartir la carga utilizaron un cluster gigante coordinado con Apache Hadoop. De esta manera, Apache Hadoop logró ordenar 1 Terabyte de datos en 62 segundos, y 1 Petabyte en 16.25 horas. Es la primera vez que un producto de software libre logra ganar esta competencia.

Apache Hadoop es un proyecto Java de software libre para brindar servicios de computación distribuida, escalable y confiable. El proyecto consiste de Hadoop Core (que brinda un sistemas de archivos distribuido y un framework MapReduce para procesamiento distribuido) y HBase (una base de datos disbribuida) entre otros componentes.

El hardware

Apache Hadoop corrió sobre el cluster Yahoo Hammer. El hardware consiste en:

  • 3800 nodos aproximadamente (en un cluster tan grande siempre hay nodos caidos)
  • 2 quad core Xeons @ 2.5ghz por nodo
  • 4 discos SATA por nodo
  • 8GB RAM por nodo (actualizados a 16GB antes de la prueba del petabyte)
  • Ethernet 1GB en cada nodo
  • 40 nodos por rack
  • 8 GB ethernet uplinks de cada nodo al núcleo
  • Red Hat Enterprise Linux Server Release 5.1 (kernel 2.6.18)
  • Sun Java JDK (1.6.0_05-b13 y 1.6.0_13-b03) (32 y 64 bit)

Los resultados

Los mejores tiempos que se midieron fueron:

Bytes Nodos Tiempo
500,000,000,000 1406 59 segundos
1,000,000,000,000 1460 62 segundos
100,000,000,000,000 3452 173 minutos
1,000,000,000,000,000 3658 975 minutos


De esta manera, Apache Hadoop logró el record al ordenar 500GB en 1 minuto (categoría Minute del benchmark SortGray), y logró también el record de 0.578 TB/minuto al ordenar 100TB en 173 minutos (categoría Gray del benchmark SortGray).

Inspiración.

"Si tú tienes una manzana y yo tengo una manzana e intercambiamos las manzanas, entonces tanto tú como yo seguiremos teniendo una manzana cada uno. Pero si tú tienes una idea y yo tengo una idea, e intercambiamos las ideas, entonces ambos tendremos dos ideas"

Bernard Shaw