2008-08-20 19 views
9

¿Alguno de ustedes ha intentado con Hadoop? ¿Se puede usar sin el sistema de archivos distribuido que lo acompaña, en una arquitectura de Share-nothing? ¿Eso tendría sentido?¿Experiencia con Hadoop?

También estoy interesado en cualquier actuación resultados que ha ...

+0

¿Qué rendimiento aspecto de hadoop es de su interés? –

Respuesta

8

sí, se puede utilizar Hadoop en un sistema de archivos local mediante el uso de URIs archivo en lugar de HDFS URI en varios lugares. Creo que muchos de los ejemplos que vienen con Hadoop hacen esto.

Esto probablemente esté bien si solo quiere saber cómo funciona Hadoop y el paradigma básico de reducción de mapas, pero necesitará múltiples máquinas y un sistema de archivos distribuido para obtener los beneficios reales de la escalabilidad inherente a la arquitectura.

3

Como dijo Joe, puedes usar Hadoop sin HDFS. Sin embargo, el rendimiento depende de la capacidad del clúster para realizar cálculos cerca de donde se almacenan los datos. El uso de HDFS tiene 2 beneficios principales en mi humilde opinión 1) el cómputo se distribuye de manera más uniforme en todo el clúster (reduciendo la cantidad de comunicación entre nodos) y 2) el clúster es más resistente a fallas debido a la falta de disponibilidad de datos.

Si sus datos ya están particionados o trivialmente particionables, es posible que desee considerar el suministro de su propia función de particionamiento para su tarea map-reduce.

3

La mejor manera de familiarizarse con Hadoop es descargarlo y comenzar a explorar los ejemplos de inclusión. Use una máquina/máquina virtual de Linux y su configuración será mucho más fácil que en Mac o Windows. Una vez que se sienta cómodo con las muestras y los conceptos, entonces comience a ver cómo su espacio problemático podría mapearse en el marco.

Un par de recursos que pueden resultar útiles para obtener más información sobre Hadoop:

Hadoop Summit Videos and Presentations

Hadoop: The Definitive Guide: Rough Cuts Version - Este es uno de los pocos libros disponibles en Hadoop en este punto (sólo?). Diría que vale la pena el precio de la opción de descarga electrónica incluso en este punto (el libro está ~ 40% completo).

Hadoop: The Definitive Guide: Rough Cuts Version http://oreilly.com/catalog/covers/9780596521998_cat.gif

4

Hadoop MapReduce puede ejecutar sábana de cualquier número de sistemas de archivos o fuentes de datos incluso más abstracto como bases de datos. De hecho, hay un par de clases incorporadas para el soporte del sistema de archivos no HDFS, como S3 y FTP. También puede crear fácilmente su propio formato de entrada ampliando el InputFormat class básico.

El uso de HDFS trae ciertas ventajas, sin embargo. La ventaja más potente es que el planificador de tareas de MapReduce intentará ejecutar mapas y reducciones en las máquinas físicas que almacenan los registros que necesitan procesamiento. Esto brinda un aumento en el rendimiento ya que los datos se pueden cargar directamente desde el disco local en lugar de transferirse a través de la red, lo que dependiendo de la conexión puede ser de varios órdenes más lento.

0

paralelo/La computación distribuida = VELOCIDAD < < Hadoop hace que este muy, muy fácil y barato ya que sólo se puede utilizar un montón de máquinas de productos básicos !!!

A lo largo de los años, la capacidad de almacenamiento en disco ha aumentado enormemente, pero las velocidades a las que lees los datos no se han mantenido. Cuantos más datos tenga en un disco, más lenta será la búsqueda.

Hadoop es una ingeniosa variante del enfoque de divide y vencerás para la resolución de problemas. Básicamente se divide el problema en fragmentos más pequeños y se asignan los trozos a varias computadoras diferentes para que realicen el procesamiento en paralelo a acelerando las cosas hasta en lugar de sobrecargar una máquina. Cada máquina procesa su propio subconjunto de datos y el resultado se combina al final. Hadoop en un solo nodo no le dará la velocidad que importa.

Para ver el beneficio de hadoop, debe tener un clúster con al menos 4 - 8 máquinas básicas (según el tamaño de sus datos) en el mismo estante.

Ya no es necesario ser un ingeniero de sistemas en paralelo supergenio para aprovechar la informática distribuida. Solo sé hadoop con Hive y listo.

0

sí, hadoop se puede usar muy bien sin HDFS. HDFS es solo un almacenamiento predeterminado para Hadoop. Puede reemplazar HDFS con cualquier otro almacenamiento como bases de datos. HadoopDB es un aumento sobre hadoop que usa bases de datos en lugar de HDFS como fuente de datos. Google it, lo obtendrás fácilmente.

0

Si solo te mojas los pies, comienza descargando CDH4 & ejecutándolo. Puedes instalarlo fácilmente en una máquina virtual local y ejecutarlo en "modo pseudo-distribuido", que imita de cerca cómo se ejecutaría en un clúster real.

0

Sí Puede usar el sistema de archivos local usando file: // mientras especifica el archivo de entrada, etc. Esto también funcionaría con pequeños conjuntos de datos. Pero el poder real de hadoop se basa en el mecanismo distribuido y compartido. Pero Hadoop se utiliza para procesar una gran cantidad de datos. Esa cantidad de datos no puede procesarse en una sola máquina local o, incluso si lo hace, llevará mucho tiempo finalizar el trabajo. Ya que su archivo de entrada está en una ubicación compartida (HDFS)) múltiples mapeadores pueden leerlo simultáneamente y reducir el tiempo para terminar el trabajo. En pocas palabras, puede usarlo con el sistema de archivos local, pero para cumplir con los requisitos comerciales, debe usarlo con el sistema de archivos compartido.

0

Excelentes respuestas teóricas anteriores.

Para cambiar su sistema de archivos hadoop a local, puede cambiarlo en el archivo de configuración "core-site.xml" como se muestra a continuación para las versiones de hadoop 2.x.x.

<property> 
    <name>fs.defaultFS</name> 
    <value>file:///</value> 
    </property> 

para hadoop versiones 1.x.x.

<property> 
    <name>fs.default.name</name> 
    <value>file:///</value> 
    </property>