Para aquellos que todavía no lo sepan, Facebook es un excelente usuario de Hadoop, y hace algunas cosas muy chulas para las necesidades tan únicas de Zuckerberg.

Hace unos pocos días compartieron una de sus últimas innovaciones, migrar un cluster de 30 Petabytes de un datacenter a otro. Paul Yang de FB lo explicaba en su página. La migración era necesaria ya que se estaban quedando sin energía ni espacio (WTF!) para expandir su cluster, que seguramente será el mayor del mundo. Yang proponía dos opciones, migrar físicamente los equipos o replicarlos: Facebook eligió la segunda para minimizar cualquier caída.

Una vez tomada la decisión, los duendes de la red social empezaron a copiar los datos, asegurandose de mantener la integridad de los mismos, es decir contemplar cualquier cambio que se aplicara sobre estos ficheros durante copia de los mismos. Evidentemenete, el mega-ultra-enorme cluster generó algunos problemas, tanto por la replicación como por la carga de los nuevos datos.

Buscando una plataforma
Había que diseñar un sistema que pudiera manejar el tamaño de los almacenes. Se entiende por almacenes a estructuras de datos que contienen millones de archivos, carpetas e instancias anidadas. Ya habían utiliza un sistema de replicación similar en clusters más pequeños y no había aguantado… Pensemos por un momento, los datos de FB así como los de muchas plataformas cloud como Flickr o Megavideo comparten unas mismas características:

  • Los datos se escriben una vez pero se consultan N veces.
  • Principio long tail

Solución: Hadoop Distributed File System.
HDFS sigue una arquitectura cliente/servidor con un nódo servidor que controla el sistema de ficheros y regula el acceso a los mismos, y varios clientes llamados Datanodes que gestionan el almacenamiento de los nodos que contienen. Internamente, un fichero es dividido en bloques, y estos bloques son almacenados en un conjunto de Datanodes. Todos los bloques excepto el último son del mismo tamaño (64Mbs por defecto). Los bloques de un fichero son replicados, con el fin de dotar al sistema de tolerancia a fallos. La optimización de la colocación de las réplicas en los diferentes Datanodes es uno de los factores que distingue a este sistema de ficheros.

Image representing Hadoop as depicted in Crunc...

Image via CrunchBase

Más adelante, Yang se mostraba encantado con la capacidad de recuperación de los clusters Hadoop. Esto podría ser una característica importante para empresas, pensando en delegar en Hadoop el almacenamiento de los datos, incluso un brownie de varios Petabytes puede ser replicado con una pequeña cantidad de lag. Por eso Hadoop se está convirtiendo en algo más que una tendencia en este tipo de plataformas. Facebook ha confirmado que esta construyendo un nuevo datacenter en Oregón, junto al actual.
¿No es curioso que la vida de 800 millones de personas esté tan condensada en unos pocos edificios?

Enhanced by Zemanta

También te puede interesar:


This is some text prior to the author information. You can change this text from the admin section of WP-Gravatar  I´m a spanish entrepreneur focused in cloud computing and video surveillance sollutions, presently working on www.vidium.es