Documentación del Usuario de Kitchen
- ¿Qué es Kitchen?
- Instalación
- Iniciando Kitchen
- Opciones de línea de comandos
- Ruta
- Ejecutar un trabajo desde un archivo
- Ejecutar un trabajo desde el repositorio
- Redirigiendo salida
- Códigos de retorno
- Programación
¿Qué es Kitchen?
Kitchen es un programa que puede ejecutar trabajos diseñados con Spoon y almacenados como XML ó en el repositorio de base de datos. Generalmente los trabajos se programan en modo por lotes para ser ejecutadas en intervalos de tiempo regulares.Instalación
El primer paso es la instalación de la máquina virtual (JRE) de Java de Sun Microsystems, versión 1.5 ó mayor. La misma puede ser descargada gratuitamente desde http://www.java.com/.Luego de esto simplemente descomprima el archivo zip de PDI (por ejemplo pdi-ce-3.1.0-GA.zip) en el directorio que elija.
En ambientes de tipo Unix (Solaris, GNU/Linux, ...) será necesario asignar permisos de ejecución a los scripts de comandos. Desde dentro del directorio de PDI se puede utilizar el siguiente comando:
chmod +x *.sh
Iniciando Kitchen
Para inciar Kitchen en diferentes plataformas se proveen los siguientes scripts:- Kitchen.bat : ejecutar Kitchen en la plataforma Windows
- kitchen.sh : ejecutar Kitchen en plataformas tipo Unix y OSX
Opciones de línea de comandos
Estas son las opciones de línea de comandos que puede utilizar.NOTAS IMPORTANTES:
- En el sistema Windows, el uso del guión ("-") en las opciones causa problemas, lo mismo que el signo igual ("="). A causa de ello a partir de la versión 2.2.2 puede utilizarse ese formato ó cualquier combinación de "/,-" y ":,=".
- Es importante que si hay valores presentes en los valores de las opciones se utilicen comillas simples ó dobles para unirlos. Observe los ejemplos subsiguientes para más información.
/opcion:valor
Mostrar información de la versión
-version
El número de versión de la compilación y la fecha de compilación se muestran también.
Ejecutar archivo XML (.kjb)
-file=nombredearchivo
Establecer el archivo de log
-log=nombredearchivo
Establecer el nivel de log
-level=niveldelog
Estos son los posibles valores:
- Error: Mostrar sólo errores
- Nothing: No mostrar salida
- Minimal: Información mínima
- Basic: Información básica (seleccionado por defecto)
- Detailed: Información detallada
- Debug: Para corrección de errores, salida muy detallada
- Rowlevel: Información a nivel de registro, puede generar una gran cantidad de datos
Seleccionar un repositorio
-rep="Nombre del Repositorio"
También será necesario especificar las opciones --user, --pass, --dir y --job.
(Esta opción tembién puede ser especificada mediante la variable de entorno KETTLE_REPOSITORY)
Establecer el nombre de usuario del repositorio
-user=nombredeusuario
(Esta opción tembién puede ser especificada mediante la variable de entorno KETTLE_USER)
Establecer la contraseña del repositorio
-pass=Contraseña
(Esta opción tembién puede ser especificada mediante la variable de entorno KETTLE_PASSWORD)
Seleccionar la transformación del repositorio a ejecutar
-trans="Nombre de la transformación"
Listar los directorios del repositorio
-listdir=Y
Establecer el directorio del repositorio
-dir=/algun/directorio
- El directorio raíz: /
- Un subdirectorio: /produccion/Dimensiones/
Listar las transformaciones del repositorio
-listtrans=Y
Listar los repositorios disponibles
-listrep=Y
No acceder al repositorio
-norep=Y
Ruta
Por favor asegúrese de estar posicionado en el directorio de PDI antes de ejecutar los ejemplos listados abajo. Si utiliza estos scripts en un archivo por lotes ó en otro script, simplemente ejecute un cambio de directorio al directorio de instalación:Si PDI estuviera instalado en Windows en el disco D:
D: cd \PDI
cd /product/PDI/
Ejecutar una transformación desde un archivo
Este ejemplo ejecuta una transformación desde un archivo en plataforma Windows:Kitchen.bat /file:"D:\Trabajos\Actualizar Warehouse.kjb" /level:Basic
kitchen.sh -file="/Trabajos/Actualizar Warehouse.kjb" -level=Minimal
Ejecutar un trabajo desde el repositorio
Este ejemplo ejecuta un trabajo desde el repositorio en plataforma Windows (Ingresar en sólo una línea sin retornos)kitchen.bat /rep:"Repositorio de producción" /job:"Actualizar dimensiones" /dir:/Dimensiones /user:miusuario /pass:pass123 /level:Basic
Redirigiendo salida
Si desea que la salida de la ejecución sea almacenada en un archivo de log en lugar de ser impresa por pantalla, puede utilizar redirecciónEste ejemplo agrega la salida de Kitchen a un archivo de log incremental:
kitchen.sh -file="/trabajos/job.kjb" -level=Minimal >> /LOG/trans.log
kitchen.bat /file:C:\trabajos\jpb.kjb /level:Basic > C:\LOG\trans.log
Códigos de retorno
Kitchen devuelve un código de error basado en el resultado de la ejecución:- 0 : La transformación se ejecutó sin problemas.
- 1 : Ocurrieron errores durante la ejecución.
- 2 : Ocurrió un error inesperado durante la carga / ejecución de la transformación.
- 3 : Imposible preparar e inicializar la transformación.
- 7 : La transformación no pudo ser cargada desde el archivo XML ó el repositorio.
- 8 : Error al cargar pasos ó complementos (generalmente error al cargar uno de los complementos)
- 9 : Impresión del uso de la línea de comandos
Programación
Programar una transformación en Windows
La mejor forma de comenzar es probando el comando primero en línea de comandos. Luego puede utilizarse el Programador de Tareas de Windows para ejecutar el comando.A partir de Windows 2000 existe una interfaz de usuario para realizar esta tarea, accesible desde el panel de control. Sin embargo también puede utilizarse la línea de comando de esta manera:
at 23:30 /every:Monday,Wednesday,Friday "D:\actualizar_dimensiones.bat"
at
Programar una transformación en Unix
La mejor forma de comenzar es probando el comando primero en línea de comandos. Luego puede utilizarse cron para ejecutar el comando. Esto puede hacerse ejecutando el siguiente comando:crontab -e
Las primeras opciones son:
- El minuto de la hora, 0-59
- La hora del día, 0-23
- El día del mes, 1-31
- El mes del año, 1-12
- El día de la semana, 0-6, 0=Domingo
Por ejemplo, para actualizar dimensions a cada hora, a los 15 y a los 45 minutos de cada hora durante los días de semana, esta sería la línea a ingresar:
# # Ejecuta la actualización de las dimensiones del almacén de datos # 15,45 * * * 1-5 /PROD/actualizar_dimensiones.sh #
No hay comentarios:
Publicar un comentario