Un poco de DWR: DWR is Easy Ajax for Java

DWR is Easy Ajax for Java

(Gracias Sergio :))

DWR es una librería Java que permite interactuar aplicaciones vía AJAX con aplicaciones Java en el Servidor de una forma muy sencilla.

DWR a partir de una clase Java disponibiliza en el Servidor Web es capaz de generar dinámicamente el JavaScript que permite a un navegador web llamar de una forma simple y segura el código de Java como si fuese una llamada local.

DWR soporta Ajax inverso y permite a la parte Java que se ejecuta en un servidor utilizar las API del lado del cliente para publicar las actualizaciones que suceden en el Servidor. Permite configurar el modelo: Comet, pollin y Piggyback

DWR también soporta cross-domain (verdad Mauro? :D)

DWR ofrece integraciones con otros frameworks como Spring para el que ofrece el espacio de nombres dwr:

Y que permite publicar un Bean de Spring con unas simples anotaciones: @RemoteProxy y @RemoteMethod

@RemoteProxy indicamos que queremos exponer el bean al cliente

@RemoteMethod Solo aquellos métodos que tengan esta anotación serán expuestos.

DWR permite el marshaling con una gran cantidad de tipos de datos: arrays, colecciones, file, enum, beans…

Para que DWR sepa transformar la clase TareaDTO que se usa como parámetro y resultado debo:

<dwr:convert type=”bean” class=”com.bbva.arq.front.spring.qdwr.ejemplodwr.TareaDTO />

Que configura un conversor responsable del marshaling de los datos entre el cliente y el servidor.

Al arrancar la aplicación tendré acceso al Servicio publicado:

http://localhost:8080/<mi_aplicacion>/dwr/test/ServicioDWR

Si tengo habilitado el debug DWR habrá generado una página como esta para poder invocar a los métodos de mi Servicio DWR:

La forma de invocar a este Servicio desde Javascript es tan simple como esta:

Que puedo usar en mi JSP:

Hadoop Sqoop: paso base de datos relacional a Hadoop

(Gracias – otra vez – Luis :))

Como veíamos en este post Hadoop es una solución que permite aplicar MapReduce para resolver funcionalidad Big Data.

Dentro del ecosistema Hadoop (MapReduce, Pig, ZooKeeper, HBase, HDFS, Hive, Chukwa,…) es muy interesante Sqoop.

Apache Sqoop es un proyecto pensado para facilitar la importación y exportación de datos entre Hadoop y bases de datos relacionales.

· Sqoop permite hacer importaciones masivas de datos con HDFS, Hive y HBase.

· Sqoop está desarrollado en Java y usa MapReduce para transferir datos en paralelo.

· Trabaja con conectores, ofrece conectores estándares (basados en JDBC) y conectores directos para mejorar el rendimiento. Ofrece conectores directos para bases de datos como MySQL, Oracle, SQL Server,…

El Flujo de importación típico con Sqoop sería algo como esto:

En la versión 1 de Sqoop se trabaja con línea de comandos:

En la versión 2 de Sqoop se incluye una GUI de administración, configuración centralizada.

Qué es BigData

Big data sirve para referirse en TI al tratamiento y análisis de enormes repositorios de datos (tanto que no puede tratarse con las herramientas de base de datos y análisis tradicionales).

Actualmente Big Data es uno de los next buzzword, ya que en la actualidad gran cantidad de aplicaciones generan datos de TB.

En este ámbito tenemos herramientas open source como Hadoop, que se está haciendo muy popular en este campo ya que que permite a las aplicaciones trabajar con enormes repositorios de datos y miles de nodos. Hadoop está inspirado en herramientas de Google como MapReduce o Google File System.

En breve más….