Red de conocimiento informático - Material del sitio web - Cómo escribir y ejecutar rápidamente su propio programa de ejemplo MapReduce

Cómo escribir y ejecutar rápidamente su propio programa de ejemplo MapReduce

En la era del big data, Hadoop y MapReduce están en todas partes. ¿Cómo no vamos a estar al día? Pero para un principiante en Hadoop, todavía es un poco difícil escribir un programa MapReduce propio. Necesita configurar un proyecto maven, descubrir las dependencias de varias bibliotecas, además de compilarlo y ejecutarlo, lo cual es básicamente un gran dolor de cabeza. . Esto también desanima a muchas personas que sólo quieren entender brevemente MapReduce.

Este artículo te enseñará cómo escribir y ejecutar tu propio programa MapReduce de la forma más rápida y sencilla, ¡vamos!

En primer lugar, hay dos premisas:

1. Ya hay un clúster de hadoop en ejecución (también puede ser un sistema de pseudodistribución), y los hdfs y mapreduce anteriores funcionan normalmente (esto es realmente lo más básico, por lo que no entraré en detalles aquí). Si no sabe cómo, consulte mon. jar:/usr/lib/gphd/hbase/lib/hbase-protocol.jar:/usr/lib/gphd/hbase/lib/hbase-client.jar: /usr/lib/gphd/hbase/lib/hbase-thrift .jar:/usr/lib/gphd/hbase/lib/htrace-core-2.01.jar:/etc/gphd/hbase/conf::/usr/lib /gphd/hive/lib/hive-service.jar:/ usr/lib/gphd/hive/lib/libthrift-0.9.0.jar:/usr/lib/gphd/hive/lib/hive-metastore.jar:/ usr/lib/gphd/hive/lib/libfb303-0.9 0.jar:/usr/lib/gphd/hive/lib/hive-common.jar:/usr/lib/gphd/hive/lib/hive-exec. jar:/usr/lib/gphd/hive/lib/postgresql -jdbc.jar:/etc/gphd/hive/conf::/usr/lib/gphd/sm-plugins/*:

3 Compilar

Ejecutar comando

javac -classpath xxx ./myword.java

La parte xxx es la ruta de clase obtenida en el paso anterior

.

Después de ejecutar este comando, se generarán algunos archivos en el archivo .class del directorio actual, por ejemplo:

myword.class myword$IntSumReducer.class myword$TokenizerMapper.class

4. Empaquete el archivo de clase en un archivo .jar

Ejecute el comando

jar -cvf myword.jar ./*.class

En este punto , el archivo jar de destino se genera con éxito

5. Prepare algunos archivos de texto y cárguelos en hdfs, utilícelos como entrada de recuento de palabras

Ejemplo:

Cree algunos. archivos de texto a voluntad y guárdelos en la carpeta mapred_test

Ejecute el comando

hadoop fs -put ./mapred_test/

Asegúrese de que esta carpeta se haya cargado correctamente a hdfs en el directorio raíz del usuario actual

6 Ejecute nuestro programa

Ejecutar comando

hadoop jar ./myword.jar salida de myword mapred_test

Si todo va bien, este comando se ejecutará normalmente, un trabajo de MapReduce comenzará a funcionar y los resultados de salida se guardarán en hdfs usuario actual En la carpeta de salida en el directorio raíz.

¡Eso es!

Si se necesitan más funciones, podemos modificar el archivo fuente anterior para lograr un trabajo MapReduce realmente útil.

Pero los principios son similares y, si se practica, básicamente es suficiente.

Un ejemplo sencillo para inspirar a otros, bienvenido al foro.

Reimprimir