Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
R: Edite el archivo Spoon.bat y 1) reemplace en la última línea "start javaw" por sólo "java" 2) agregue el comando "pause" en la siguiente línea
3) guarde el archivo e intente nuevamente. Ahora obtendrá un mensaje de error que puede analizar mediante las siguientes preguntas.
P: Cuando inicio Spoon obtengo el siguiente error: "Could not find the main class. Program will exit".
R: Este error puede ocurrir por varias razones, la causa principal es siempre que los jars de Kettle no están en el classpath.
Asumiendo que usted bajó la versión binaria de Pentaho Data Integration: confirme que haya descomprimido el archivo zip manteniendo
la estructura de directorios que contiene: dentro del directorio principal debería existir un directorio llamado "lib" que contiene un archivo
llamado "kettle.jar" en versiones menores ó iguales a la 2.5.x, ó varios archivos cuyos nombres comienzan con "kettle" en versiones
posteriores a la 3.0. Si este no es el caso por favor extraiga nuevamente los archivos conservando la estructura de directorios.
Si obtuvo el código fuente de Pentaho Data Integration y compiló la aplicación usted mismo, probablemente esté ejecutando el script de
Spoon desde el directorio incorrecto. La distribución de código fuente contiene un directorio llamado "bin" que contiene los scripts, pero
si se compila de manera correcta la versión "distribuible" de PDI se encontrará en un directorio llamado "distrib". Debería ejecutar el
script de Spoon desde ese directorio.
P: Cuando inicio Spoon obtengo uno de los siguientes errores ó uno similar:
R: A partir de la versión 3 de Kettle se necesita Java 5 (también conocido como 1.5), obtenga esta versión en http://www.javasoft.com. Cuando la
versión correcta no se encuentra en el path (verifíquelo ejecutando "java -version" en línea de comandos) esto puede configurarse en el archivo
Spoon.bat (ver la línea "set PATH").
R: Las transformaciones son para mover y transformar filas entre una fuente y un destino. Los trabajos permiten controlar el flujo a más alto
nivel: ejecutar transformaciones, enviar correo electrónico en caso de error, enviar archivos por FTP, etc.
R: No mezclar tipos de filas significa que cada una de las filas que pasan por un determinado salto debe tener la misma estructura: mismos
nombres de campos, tipos de datos y orden de los campos. Así que si desea hacer algo como "agregar un campo extra si una condición es
cierta pero no si es falsa" no va a funcionar. Puede habilitarse el "Modo Seguro" para comprobar esto en tiempo de ejecución
A partir de la versión 2.5.0 la comprobación de mezcla de filas se realiza automáticamente en tiempo de diseño/verificación, pero el Modo Seguro
todavía debe ser habilitado para realizar la comprobación en tiempo de ejecución (ya que tiene un pequeño costo de procesamiento).
Una manera de ver esto es considerando que un paso es muy similar a una tabla de base de datos en algunos aspectos, tampoco en las tablas
pueden guardarse filas de diferente estructura. La razón teórica para esto es que PDI quiere poder realizar transformaciones uniformes y
consistentes con sus datos, y el hecho de tener filas de estructura variable hace que esto sea mucho más complejo.
Desde el punto de vista técnico, la mayoría de los pasos utilizan técnicas de optimización que utilizan índices en reemplazo de los nombres de
columnas (por ejemplo la columna "nombre" sería internamente la columna 4). Filas variables haría que esto no fuera posible.
R: No. PDI se quejará en la mayoría de los casos si detecta nombres de campo duplicados. En versiones previas a la 2.5.0 podía forzarse el uso
de nombres duplicados, pero en ese caso sólo el primer valor de los campos duplicados podía utilizarse.
Cuando se utiliza por ejemplo el paso "Añadir constante" ó "Generar fila" y se ingresa una cadena vacía se está generando un valor NULL.
1. Utilizar un paso "Seleccionar Valores" y renombrar un campo, seleccionando también el campo original.
2. Utilizar un paso "Calculadora" y utilizar la operación NLV(A,B)
3. Utilizar un paso Javascript para copiar el campo
R: Para unir dos tablas de la misma base de datos se utiliza un paso "Entrada de Tabla" y se realiza la unión (JOIN) en la sentencia SQL. Es la
solución más rápida si se trata de sólo una base de datos.
Para unir dos tablas que no están en la misma base de datos, se puede utilizar el paso "Unión de Bases de Datos", pero debe tenerse en cuenta
que PDI lanzará una consulta para cada fila de entrada del flujo de datos principal.
Una tercera opción es lanzar las dos consultas por separado y unirlas utilizando un paso "Merge Join(TRADUCIR)". Asegúrese de que los datos
estén ordenados por la clave sobre la cual se hará la unión, ya que este es muy probablemente el método de ordenamiento más rápido.
R: Esto no es posible. Una de las cosas básicas en PDI es que todos los pasos de una transformación corren en paralelo. No pueden correr en
serie. Esto requeriría cambios en la arquitectura de PDI y resultaría en procesamiento extremadamente lento.
R: Estos son los pasos para crear una conexión basada en variables y compartir la conexión para facilitar la reutilización: