ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Desarrollo de un entorno basado en MapReduce para la ejecución distribuida de algoritmos genéticos paralelos

almoreno25 de Febrero de 2013

5.688 Palabras (23 Páginas)746 Visitas

Página 1 de 23

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 sencillo: solo

hace falta descargar el instalador setup.exe de su página web y ejecutarlo para que

se inicie el asistente que guiará al usuario durante todo el proceso de instalación.

Hadoop funciona razonablemente bien en Cygwin, pero, oficialmente, es solo

para propósitos de investigación. Hadoop en Cygwin puede ser inestable, e instalar el

propio Cygwin puede resultar incómodo ya que no posee un asistente de instalación al

uso.

1.3 Entorno virtualizado con Hadoop

Esta sección explica cómo configurar una máquina virtual que ejecute Hadoop

dentro del ordenador anfitrión.

Los usuarios de Linux, MacOS, u otros entornos de estilo Unix son capaces de

instalar Hadoop y ejecutarlo en una o más máquinas sin necesidad de más software a

mayores que Java. Si el lector está interesado en esta opción, existen instrucciones

disponibles en la página web de Hadoop en la sección de quickstart documentation

(http://hadoop.apache.org/common/docs/r0.20.1/quickstart.html).

Para facilitar la primera aproximación a Hadoop a los programadores, es

interesante contar con una imagen de una máquina virtual que traiga una distribución de

Hadoop preconfigurada. La imagen virtual se ejecutará dentro de un entorno sandbox

en el que se podrá ejecutar otro sistema operativo. El SO dentro del sandbox no sabe

que existe otro entorno operativo exterior a él; actúa como si estuviese en su propio

ordenador. Este entorno sandbox es conocido como “máquina cliente”, ejecutando un

sistema operativo cliente. La máquina física que ejecuta el software de virtualización se

llama “máquina anfitrión” y ejecuta el sistema operativo anfitrión. La máquina virtual

facilita otras aplicaciones de tal forma que simula que existe otra máquina física en la

misma red. Las aplicaciones que se ejecutan en la máquina anfitrión ven la máquina

virtual como una máquina aparte con su propia dirección IP, y pueden interactuar con

los programas dentro de la máquina virtual de esta forma (véase Captura 1).

Para finalizar, comentar que la máquina virtual también se puede ejecutar siendo

Linux el sistema anfitrión, con las mismas características de conexión que en el caso

anterior.

Instalación del Software Página | 3

Captura 1: MáquinaWindows virtualizando máquina Linux

1.4 Instalando VMWare Player

La máquina virtual descargada en el apartado anterior está diseñada para

ejecutarse en VMWare Player (http://www.vmware.com). Se pueden descargar copias

del instalador de VMWare Player tanto para Linux en formato rpm, bundle o para

Windows. En particular en el caso de Windows, se ejecuta como un asistente de

instalación cualquiera.

...

Descargar como (para miembros actualizados) txt (45 Kb)
Leer 22 páginas más »
Disponible sólo en Clubensayos.com