lunes, 30 de abril de 2012

Reporte #12

Esta semana investigué sobre dRuby que es un sistema de objetos distribuidos, en el cual es mas preciso para la llamada remota de metodos(RMI).Tambien te permite facilmente llamar objetos en otros procesos.

La gran diferencia que existe entre dRuby y Ruby es en que es relativamente muy facil usar un sistema de objetos distribuido en dRuby.Por ejemplo en Ruby tu puedes usar un método con una secuencia mientras que en dRuby puedes elegir de manera dinamica como enviar un objeto de manera remota, y con esto tu no tienes que describir una interfaz o un método de transportación.

dRuby puede cambiar la manera de desarrollar nuestras apps ya que toma importancia de la capa compleja de comunicacion entre procesos, y una manera fácil de comenzar a escribir.

Aquí un código ejemplo

Cliente.rb


Server.rb




Lo que hace el cliente es llamar al método get_current_time del servidor y con ello obtiene el tiempo actual como resultado de ello.


Está semana nomino a Juan Carlos por escribir los scripts que están siendo de gran ayuda.


Fuentes:

Información

http://pragprog.com/book/sidruby/the-druby-book

Código ejemplo

http://www.java-samples.com/showtutorial.php?tutorialid=1112

jueves, 19 de abril de 2012

Reporte

En está semana se investigó sobre MapReduce que este es un framework introducido por Google para dar soporte a la computación paralela sobre grandes colecciones de datos en un gran número de computadoras.El nombre del framework está inspirado en los nombres de dos importantes métodos, macros o funciones en programación funcional:
Map y Reduce

Las funciones Map y Reduce están definidas ambas con respecto a datos estructurados en pares (clave, valor). Map toma uno de estos pares de datos con un tipo en un dominio de datos, y devuelve una lista de pares en un dominio diferente:
Map(k1,v1) -> list(k2,v2)  

La función de mapeo es aplicada en paralelo para cada ítem en la entrada de datos.

Esto produce una lista de pares (k2,v2) por cada llamada. Después de eso, el framework de MapReduce junta todos los pares con la misma clave de todas las listas y los agrupa, creando un grupo por cada una de las diferentes claves generadas.

La función reduce es aplicada en paralelo para cada grupo, produciendo una colección de valores para cada dominio:
Reduce(k2, list (v2)) -> list(v2)  
Cada llamada a Reduce típicamente produce un valor v2 o una llamada vacía, aunque una llamada puede retornar más de un valor.

El retorno de todas esas llamadas se recoge como la lista de resultado deseado.  Por lo tanto, el framework MapReduce transforma una lista de pares (clave, valor) en una lista de valores. Este comportamiento es diferente de la combinación "map and reduce" de programación funcional, que acepta una lista arbitraria de valores y devuelve un valor único que combina todos los valores devueltos por mapa.

Busqué algún libro que me pueda ayudar a entender estos conceptos y lo más factible que encontré fue este:
 Writing and Querying MapReduce Views in CouchDB
http://www.amazon.com/exec/obidos/tg/detail/-/1449303129

Mi nominación de la semana es Abraham, ya que habló sobre Web Crawler y algunos conceptos no los sabía.

Fuente:
 MapReduce : Wikipedia

Conceptos Básicos

Unidad

Denominación que reciben los disco duros, las disqueteras, los lectores de cd-rom y DVD, y en general, todos los puntos de almacenamiento de datos. La posibilidad de incorporar varios discos duros en un mismo ordenador ocasiona que los programas, al instalarlos, ofrezcan la opción de elegir la unidad de disco.

Priority

La prioridad es un dato definido por el usuario que determina la importancia de cada recurso que un usuario está usando para acceder al servidor.

Access

Es el resultado positivo de una autentificación, para que el acceso dure un tiempo predeterminado, el servidor guarda en el cliente una cookie, esta permitirá que el usuario pueda entrar a su cuenta en el servidor hasta que esta caduque.

Stream

Es la distribución de multimedia a través de una red de computadoras de manera que el usuario consume el producto al mismo tiempo que se descarga. La palabra se refiere a que se trata de una corriente continua (sin interrupción).

Virtual

Es un sistema tecnológico, basado en el empleo de ordenadores y otros dispositivos, cuyo fin es producir una apariencia de realidad que permita al usuario tener la sensación de estar presente en ella.

Display

Dispositivo de ciertos aparatos electrónicos que permite mostrar información al usuario, creado a partir de la aparición de calculadoras, cajas registradoras e instrumentos de medida electrónicos en los que era necesario hacerlo.

Fuente:
http://www.ondata.es/recuperar/glosario.htm
Wikipedia