Factores de forma de implementación alternativos para hadoop
Aunque Hadoop funciona mejor cuando está instalado en un equipo físico, cuando el tratamiento tiene acceso directo al almacenamiento dedicado y redes, Hadoop tiene implementaciones alternativas. Y a pesar de que son menos eficientes que el hardware dedicado, en ciertos casos, las alternativas son opciones que vale la pena.
Los servidores virtualizados
Una tendencia importante en centros de TI en la última década es la virtualización, donde un servidor grande puede albergar varios " máquinas virtuales " que lucir y actuar como máquinas individuales. En lugar de hardware dedicado, todo el conjunto de aplicaciones y repositorios de una organización se implementa en hardware virtualizado.
Este enfoque tiene muchas ventajas: La centralización de TI simplifica el mantenimiento, la inversión en TI se maximiza debido a un menor número de ciclos de CPU no utilizados, y la huella global de hardware es más baja, lo que resulta en un menor costo total de propiedad.
Organizaciones en las que las implementaciones de TI están totalmente virtualizados veces exigen que cada nueva aplicación siguen este modelo. Aunque Hadoop se puede implementar de esta manera, esencialmente como un clúster virtual (con maestros nodos virtuales y nodos esclavos virtuales), el rendimiento se resiente, en parte porque la mayoría de los entornos virtualizados, almacenamiento está basado en SAN y no está conectado localmente.
Debido Hadoop está diseñado para trabajar mejor cuando todos los núcleos de CPU disponibles son capaces de tener acceso rápido a girar de forma independiente los discos, un cuello de botella se crea como todo el mapa y reducir las tareas de iniciar el procesamiento de datos a través de la limitada creación de redes entre la CPU y la SAN. Dado que el grado de aislamiento entre los recursos de servidores virtualizados está limitada (servidores virtuales comparten recursos con los demás), las cargas de trabajo Hadoop también pueden verse afectados por otra actividad.
Cuando el rendimiento de su servidor virtual se ve afectado por la carga de trabajo de otro servidor, que en realidad es conocido en los círculos de TI como un " ruidoso vecino " problema!
Los entornos virtualizados pueden ser muy útiles, sin embargo, en algunos casos. Por ejemplo, si su organización necesita para completar un análisis exploratorio de una sola vez de un gran conjunto de datos, puede crear fácilmente un cluster temporal en su entorno virtualizado. Este método es a menudo una forma más rápida para obtener la aprobación interna que soportar las molestias burocráticas de la adquisición de nuevo hardware dedicado.
A medida que experimente con Hadoop, a menudo se ejecutan en sus máquinas portátiles a través de una máquina virtual (VM). Hadoop es extremadamente lento en este tipo de ambiente, pero si usted está utilizando conjuntos de datos pequeños, es una valiosa herramienta de aprendizaje y pruebas.
Despliegues cloud
Las variaciones de los entornos virtualizados son proveedores de computación en nube como Amazon, Rackspace, e IBM SoftLayer. La mayoría de los principales proveedores de la nube pública ahora tienen ofertas MapReduce o Hadoop disponibles para su uso. Una vez más, su rendimiento es inferior a la implantación del clúster en hardware dedicado, pero está mejorando.
Los proveedores de cloud están haciendo entornos optimizados Hadoop disponibles donde nodos esclavos han conectado localmente almacenamiento y redes dedicada. Además, se están convirtiendo en hipervisores mucho más eficiente, con una sobrecarga reducida y la latencia.
No considerar una solución en la nube para aplicaciones a largo plazo, debido a que el costo del alquiler de los recursos de computación en nube es significativamente mayor que la de poseer y mantener un sistema comparable. Con un proveedor de la nube, que está pagando por la comodidad y por ser capaz de descargar la sobrecarga de aprovisionamiento de hardware. Sin embargo, la nube es una plataforma ideal para las tareas de prueba, educación y tratamiento de datos de una sola vez.
Aparte de las consideraciones de rendimiento y de costo, usted tiene consideraciones regulatorias con las implementaciones de nube pública. Si tiene datos sensibles, que deben ser almacenados, ya sea en casa o en el país, una implementación de nube pública no es una opción. En casos como este, donde se necesita la conveniencia de una distribución basada en la nube, una nube privada es una buena opción, si está disponible.