Desarrollo de un entorno basado en MapReduce para la ejecución distribuida de algoritmos genéticos paralelos
Enviado por almoreno • 25 de Febrero de 2013 • 5.688 Palabras (23 Páginas) • 703 Visitas
UNIVERSIDADE DA CORUÑA
FACULTAD DE INFORMÁTICA
Departamento de Electrónica y Sistemas
PROYECTO FIN DE CARRERA DE INGENIERÍA
INFORMÁTICA
Desarrollo de un entorno basado en
MapReduce para la ejecución distribuida
de algoritmos genéticos paralelos
-.Consideraciones técnicas.-
Autor: Alberto Luengo Cabanillas
Directores: Xoán Carlos Pardo Martínez
Patricia González Gómez
A Coruña, 21 de Septiembre de 2010
Índice general I
Índice general
CONSIDERACIONES TÉCNICAS ____________________________________________________1
1. INSTALACIÓN DEL SOFTWARE ____________________________________________________1
1.1 Prerrequisitos ____________________________________________________________1
1.2 Cygwin__________________________________________________________________1
1.3 Entorno virtualizado con Hadoop _____________________________________________2
1.4 Instalando VMWare Player __________________________________________________3
1.4.1 Configurando el Entorno Virtual ____________________________________________________ 4
1.4.2 Cuentas de usuario de la máquina virtual ______________________________________________ 5
1.4.3 Ejecutando un trabajo Hadoop ______________________________________________________ 5
1.4.5 Accediendo a la máquina virtual mediante ssh__________________________________________ 6
1.4.6 Apagando la máquina virtual _______________________________________________________ 7
1.5 Preparando Eclipse ________________________________________________________7
1.5.1 Descarga e instalación ____________________________________________________________ 7
1.5.2 Instalación del plugin Hadoop MapReduce ____________________________________________ 8
1.5.3 Haciendo una copia de Hadoop _____________________________________________________ 8
1.5.4 Ejecutando Eclipse _______________________________________________________________ 8
1.5.5 Configurando el plugin Hadoop MapReduce ___________________________________________ 9
1.6 PigPen: Plugin de Pig Latin para Eclipse______________________________________11
1.7 Interactuando con el HDFS_________________________________________________12
1.7.1 Usando la línea de comandos ______________________________________________________ 12
1.7.2 Usando el plugin MapReduce para Eclipse ___________________________________________ 13
1.8 Lanzando un programa de prueba____________________________________________13
1.8.1 Creación del Proyecto____________________________________________________________ 14
1.8.2 Creación de los archivos fuente ____________________________________________________ 14
1.8.3 Lanzando el trabajo contra el HDFS_________________________________________________ 15
2. MANUAL DE USUARIO DEL PROYECTOMRPGA _____________________________________19
3. MANUAL DE PROGRAMADOR DEL PROYECTOMRPGA ________________________________23
Índice de capturas III
Índice de capturas
CAPTURA 1:MÁQUINAWINDOWS VIRTUALIZANDO MÁQUINA LINUX........................................................3
CAPTURA 2: INSTALACIÓN VMWARE PLAYER .........................................................................................4
CAPTURA 3: LISTADO DE SERVIDORESMAPREDUCE EN ECLIPSE 3.5........................................................10
CAPTURA 4: PLUGINS DE PIG Y HADOOP INSTALADOS EN ECLIPSE 3.5 .....................................................12
CAPTURA 5: CÓDIGO JAVA CLASEWORDCOUNTMAPPER .......................................................................16
CAPTURA 6: CÓDIGO JAVA CLASEWORDCOUNTREDUCER......................................................................17
CAPTURA 7: CÓDIGO JAVA CLASEWORDCOUNT ....................................................................................18
CAPTURA 8: RESULTADO EJECUCIÓN TRABAJOMRWORDCOUNT...........................................................19
CAPTURA 9:MENÚ JAVA BUILD PATH EN ECLIPSE 3.5............................................................................20
CAPTURA 10: EDICIÓN DE PARÁMETROS DE LA APLICACIÓN EN ECLIPSE 3.5 ............................................21
CAPTURA 11: RESULTADOS DE EJECUCIÓN DEL PROYECTOMRPGA EN ECLIPSE 3.5................................22
Consideraciones Técnicas Página | 1
Consideraciones Técnicas
A lo largo de este documento se abarcarán las cuestiones más técnicas del
desarrollo del sistema, desde su configuración e instalación hasta su ejecución y uso. En
la primera sección se procede a desarrollar un breve tutorial con los pasos necesarios
para configurar el entorno adecuado de ejecución para la aplicación. En la sección 2 se
incluye un manual de usuario en el que se explica la manera de ejecutar un AG
determinado en el framework que se ha implementado y por último, en la tercera
sección se incluye un breve manual para el programador que desee modificar alguna de
las decisiones de implementación llevadas a cabo (p.ej. diferente operador de cruce o
selección, diferente codificación de la población, etc.).
1. Instalación del Software
A continuación se detallan los pasos seguidos para poder replicar el entorno en
el que se ha desarrollado la aplicación.
1.1 Prerrequisitos
Desarrollar programas para Hadoop requiere un entorno de programación Java.
Se puede descargar un kit de desarrollo Java (JDK) (desde
http://java.sun.com/javase/downloads/index.jsp) para una multitud de sistemas
operativos. Hadoop requiere la versión 6 de Java Standard Edition (Java SE) que es la
más actual a la hora de escribir estas líneas.
1.2 Cygwin
Para poder conectarse a la máquina virtual sobre la que está montada nuestra
distribución de Hadoop es necesario tener un nombre de usuario conforme a alguno de
los existentes en la máquina virtual. Dicha comprobación la realiza el plugin conector
de Eclipse cuando necesite conectarse al HDFS remoto, mediante el valor que devuelve
el comando Unix whoami. Dicho comando no es nativo de Windows, por lo que se
vuelve necesario tener un entorno Unix dentro de Windows desde el que lanzar Eclipse
para que se comporte correctamente.
Página | 2 Consideraciones Técnicas
La solución más sencilla pasa por descargar e instalar Cygwin
(http://www.cygwin.com/) a la máquina local. Este proceso es sumamente
...