En al anterior post vimos cómo podíamos importar datos desde DataMarket. Me encontré con un error cuando importaba los datos desde DataMarket, el cual voy a explicar en este post a qué se debe.

El procedimiento para importar los datos desde DataMarket es trivial al explicado en el anterior post, pero en este caso vamos a elegir importar los datos de UK Met Office Weather Open Data.

Realizamos el mismo proceso para obtener los datos en el DataMarket, y rellenamos los datos en Import From Data Market de nuestro cluster. (ver Imagen 1).

Imagen1: Importación datos desde data market
Imagen1: Importación datos desde data market

Una vez ha finalizado el proceso, veremos la pantalla que la operación ha finalizado con éxito.

 

Imagen 2: Importacion finalizada con éxito
Imagen 2: Importacion finalizada con éxito

Ahora intentamos acceder a los datos a través de la consola interactiva de Hive de nuestro cluster, o bien desde Excel 2010, pero nos damos cuenta que los datos no se han importado. ¿Qué ha ocurrido entonces? Vamos a explicar paso a paso qué ha ocurrido y qué hacer para solucionar este problema.

  1. En la pantalla de Inicio del cluster Hadoop Azure, hacemos click en Remote Desktop y nos conectaremos al cluster mediante escritorio remoto.
  2. En el escritorio tendremos un acceso directo de Internet Explorer para acceder a MapReduce, hacemos doble click sobre el acceso directo.
  3. En la esquina inferior izquierda de la página principal de MapReduce, hacer click en Log.
  4. Abrir el log que corresponda con DataLoader.exe-RD…log
  5. Ahora podremos analizar el log, y efectivamente encontramos el siguiente error (ver Imagen 3)
    Imagen 3: Log de las tareas realizas en el cluster.
    Imagen 3: Log de las tareas realizas en el cluster.

    La parte señada con azul, está indicando que se ha producido un error, la tabla que hemos importado contiene un campo llamado “Date”, y “Date” corresponde con una palabra reservada dentro de Hadoop Azure, por lo que al crear la tabla en el cluster se produce el error. Es cierto, que es contradictorio, porque al importar los datos no obtuvimos ningún mensaje de error, pero internamente si que ha fallado el proceso. Esperemos que en futuras versiones, corrijan este error.

    Ahora que ya sabemos donde está el error, ¿qué hacer para solucionarlo?

    En el log vemos la consulta que ha sido resultante del error y se puede apreciar el campo con nombre Date, ver imagen 4

    Imagen 4: Consulta que ha resultado error.
    Imagen 4: Consulta que ha resultado error.
  6. Copiamos la consulta señalada en la Imangen 4, y volvemos a la página web donde tenemos abierto el cluster de Hadoop Azure.
  7. Hacemos click en Interactive Console
  8. Click en el botón superior derecho de Hive, y pegamos en la sección de abajo la consulta.
  9. El campo Date, lo cambiamos por “DateFecha” (o algún otro nombre que queramos).
  10. Hacemos click en Evaluate
  11. Una vez ha ejecutado la sentencia, nos indicará que se la realizado correctamente (ver Imagen 5).
    Imagen 5: Ejecutar consulta
    Imagen 5: Ejecutar consulta

    Una vez ya hemos creado la tabla correctamente, podemos acceder a través de la consola interactiva de Hive a la tabla creada, como muestra la Imagen 6.

    Imagen 6: consulta a la tabla creada
    Imagen 6: consulta a la tabla creada

Como ya hemos mencionado, se trata de un error, que contradice el proceso con el resultado obtenido, si os pasa con alguna importación de datos, revisad los logs que seguramente ahí esté el error.

 

0 Shares:
Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

You May Also Like
Leer más

Hilando fino en SSAS multidimensional

El equipo de SolidQ ha estado buscando la mejor manera de implementar una jerarquía padre-hijo de cuentas contables con un operador unitario que tuviera un buen rendimiento, a pesar de la gran cantidad de datos a la que tenía que enfrentarse. Veremos cómo aplanar la jerarquía, cómo implementarlo con SSAS, con una alternativa MDX, cómo añadir ordenación a las cuentas basadas en otro atributo, Time Balance Average y algún otro truco de tuning.