Kettle logoSi eres nuevo en Kettle (ahora Pentaho Data Integration) te aconsejo dos cosas:

  1. Usa el interfaz en inglés porque las listas de valores (yes, no, sum, add,…) no están preparadas para ser traducidas y dan errores si las usas traducidas (por ejemplo, debes usar “Y”,”N” en lugar de “S”,”N” para los valores boléanos).
  2. En cuanto compruebes que es la herramienta que necesitas deja de trabajar en local (“No repository”) y crea un repositorio donde almacenar los “objetos” Kettle.

Creando un repositorio de Kettle:

Una traducción literal de la documentación seria: Un repositorio de Kettle (Kettle Repository) es un conjunto de tablas de base de datos que son accesibles por los clientes de Kettle (Spoon, Chef, Pan y Kitchen) para almacenar y recibir transformaciones, trabajos, conexiones de base de datos, etc.

Un poco más en detalle, un repositorio de Kettle es una base de datos que contiene las tablas necesarias para poder almacenar todos los “objetos” Kettle que creemos. Transformaciones, trabajos, conexiones estarán disponibles de forma centralizada, facilitando la reutilización y gestión de cambios.

El repositorio es independiente de la base de datos, Kettle sólo necesita que existan las tablas definidas en el esquema relacional incluido en la documentación (dentro de la directorio “docs” el documento “erd_kettle_repository.pdf”). Kettle no soporta oficialmente ningún otro método de acceso para los repositorios que no sea Native (JDBC) y las pruebas que he realizado demuestran que al menos con ODBC falla. No obstante, podemos acceder a casi cualquier base de datos con JDBC desde Kettle.

Kettle repository 1

Para crear un repositorio de datos usaremos Spoon que permite crear y actualizar los repositorios de Kettle desde un interfaz grafico. Es sencillo, en la primera ventana de Spoon (sino hemos deshabilitado su aparición) tenemos que seleccionar el repositorio que deseamos utilizar, al mismo tiempo también nos permite las opciones de editar, actualizar (migrar a la nueva versión) o borrar el repositorio.

En nuestro caso, vamos a crear un nuevo repositorio, pulsamos el botón “New”. Para crear un nuevo repositorio primeramente tenemos que tener una conexión a la base de datos donde se almacenará.

Kettle repository 2

Creamos una nueva conexión, es importante tener en cuenta dos cosas:

  1. El tipo de conexión debe ser Native (JDBC).
  2. El usuario de acceso a la base de datos tienen que tener permisos para crear tablas al menos durante el proceso de creación del repositorio, sino obviamente no podrá crear las tablas del repositorio.

 Kettle repository 3

Una vez configurada la conexión daremos un nombre y una descripción al repositorio. Ahora si todo es correcto, simplemente pulsando el botón “Create or Upgrade” Spoon creará automáticamente todas las tablas y datos necesarios para el repositorio en la base de datos. Al mismo tiempo, toda la configuración de acceso creada quedará almacenada en el fichero “repositories.xml” dentro del directorio “.Kettle” (este a su vez dentro del directorio personal del usuario).

Una vez creado el repositorio, necesitamos también un usuario y un password para poder conectarnos. El primer usuario/password en un repositorio recién creado es admin/admin. El password puede ser (o mejor dicho, debería ser) cambiado después de realizar el primer lógin con el explorador de repositorio.

También se puede realizar auto-login en el repositorio, es cómodo aunque menos seguro. Para configurar el auto-login hay que configurar las siguientes variables de entorno KETTLE_REPOSITORY, KETTLE_USER and KETTLE_PASSWORD.

El explorador de repositorio

El “Repository Explorer” o Explorador de repositorio es la herramienta dentro de Spoon que nos permite ver y modificar los objetos almacenados en el repositorio al que estamos conectados.

De forma sencilla en una vista de árbol podemos ver los diferentes objetos que podemos almacenar en un repositorio (Conexiones, esquemas de partición, Slave Servers, Clusters, transformaciones, trabajos, usuarios y perfiles).

 Kettle repository explorer

Dentro de las transformaciones y trabajos podemos crear a su vez una estructura de árbol para organizar nuestros objetos.

Backup del repositorio

Como siempre es importante asegurar la recuperación del trabajo realizado en caso de desastre y realizar una copia de seguridad de repositorio. Vamos a ver que es muy sencillo realizar un backup y puede ser en si otra de las ventajas de tener almacenados los objetos de Kettle en un repositorio.

Hay dos formas para realizar una copia de seguridad de los objetos de un repositorio.

  1. Con el Explorador del Repositorio, en el menú seleccionar la opción de Exportar todos los objetos a un fichero XML. También se pueden exportar subgrupos de objetos con el menú contextual que aparece al pulsar encima de ellos con el botón derecho del ratón. Estas indicaciones también son válidas la restauración de copias de seguridad.
  2. Con “pan.bat –exprep=miFicheroDeBackup.xml”. Con este método podemos crear una pequeña tarea de Windows para que realice un backup todas las noches. (en Linux es con pan.sh)
Be Sociable, Share!