Documentos de Académico
Documentos de Profesional
Documentos de Cultura
BIRMINGHAM - Bombay
Guía de Pentaho Data Integration inicio rápido
Todos los derechos reservados. Ninguna parte de esta publicación puede ser reproducida, almacenada en un sistema de recuperación o transmitida en cualquier forma o
por cualquier medio, sin la previa autorización por escrito del editor, excepto en el caso de citas breves incorporados en artículos de revistas. Cada esfuerzo se ha hecho en
la preparación de este libro para asegurar la exactitud de la información presentada. Sin embargo, la información contenida en este libro se vende sin garantía, ya sea
expresa o implícita. Ni el autor, ni Packt Publishing o sus concesionarios y distribuidores, serán responsables por cualquier daño causado o presuntamente causado directa
o indirectamente por este libro. Packt Publishing se ha esforzado para proporcionar información sobre marcas registradas acerca de todas las compañías y productos
ISBN 978-1-78934-332-8
www.packtpub.com
A mis hijos preciosos.
MAPt es una biblioteca digital en línea que le da acceso total a más de 5.000 libros y videos, así como
herramientas líderes en la industria para ayudar a planificar su desarrollo personal y avanzar en su carrera. Para
obtener más información, por favor visite nuestro sitio web.
¿Por qué suscribirse?
Pasar menos tiempo aprendiendo y más tiempo con la codificación de libros electrónicos prácticos y videos de
Mejorar su aprendizaje con los planes de habilidad construidas especialmente para usted
consigue un libro electrónico o de vídeo gratis cada mes MAPt es que se puede buscar
disponible? Se puede actualizar a la versión de libro electrónico en www.PacktP ub.com y como un cliente de impresión de libros,
usted tiene derecho a un descuento en la copia de libros electrónicos. Póngase en contacto con nosotros en service@packtpub.com para
más detalles. A www.PacktPub.com , también se puede leer una colección de artículos técnicos gratuitos, crea para una serie de
boletines de noticias libres, y recibir descuentos y ofertas exclusivas en los libros y libros electrónicos Packt.
Prefacio
María Carina comenzó a escribir sus primeros libros de la caldera (también conocido como Pentaho Data Integration o
PDI) principiantes hace casi 10 años. Desde entonces, el proyecto de la caldera y su comunidad han estado creciendo
rápidamente y, desde luego; desde aquellos primeros días, el número de posibilidades con la herramienta de haber sido
la explosión. En ciertos aspectos, las interfaces gráficas de usuario se han hecho mucho mejor, pero el poder absoluto de
hacer todo tipo de tareas de integración de datos complejos pueden sido desalentador para la gente que acaba de
empezar. Libros como el que usted está leyendo ahora son excelentes en que le da una ventaja.
También tenemos que libros como éste, porque el mundo de la tecnología de la información está cambiando cada vez más
rápido en direcciones que apenas podíamos prever hace una década. Nube, grandes volúmenes de datos, Transmisión,
NoSQL, las evoluciones tecnológicas parecen venir más y más rápido, y los datos contenidos en ella necesita conseguir de
alguna manera integrada. Este libro te llevará más cerca de resolver los problemas retorcidos mucho más rápido. Hervidor
de agua es una herramienta con muy pocas limitaciones que viven en la punta de lanza de una gran cantidad de
tecnologías, y la gente me ha estado diciendo a lo largo de los años lo liberador que es en comparación con otro software
que necesita constantemente para decirle cómo llevar a cabo ciertas tareas. Esta libertad tiene el propósito de permitir a
hacer el trabajo de integración de datos complejos y nunca se atascan y siempre encontrar una manera de hacer el trabajo,
no importa lo difícil que es. Con este libro, iniciarse en esta complejidad no es de enormes proporciones más; es divertido.
Estoy muy feliz de que María Carina decidió escribir este libro, y te estoy deseando un montón de diversión en el camino
Matt Ruedas
fundador del proyecto caldera
Ella comenzó a trabajar con Pentaho en 2006. Pasó todos estos años desarrollando soluciones de BI,
principalmente como un especialista en ETL, y trabajando para diferentes empresas de todo el mundo.
Actualmente, vive en Buenos Aires y trabaja como consultor independiente. Carina es el autor de Aprender
Pentaho Data Integration 8 CE, publicado por Packt en diciembre de 2017. También es autora de
otros libros sobre Pentaho, todos ellos publicados por Packt.
Me gustaría dar las gracias a todos mis amigos que apoyan mi trabajo, los revisores técnicos por su tiempo y dedicación, y los lectores que me
han confiado a través de los años.
Sobre el revisor
Sahil Goyal es un desarrollador que reside en Hyderabad, India. Él es un entrenador y consultor en línea, la
enseñanza de desarrollo de ETL y desarrollo SQL para los profesionales que trabajan y estudiantes. Sahil
tiene un gran interés en el desarrollo de ETL Pentaho Data Integration y ha estado trabajando en él durante
varios años en múltiples contextos (consultoría, trabajo independiente, y contratación) y países (India,
Estados Unidos, Malasia y España), que ha añadido valor profesional y la experiencia de su carrera.
Actualmente trabaja para una corporación multinacional con sede en Bélgica como desarrollador de integración
de datos.
Gracias a mi familia y amigos por su apoyo y paciencia durante las largas jornadas de trabajo. En especial a mi madre, que siempre tiene una
sonrisa para mí y ha estado a mi lado durante toda mi carrera hasta la fecha.
Packt es la búsqueda de autores como usted
Si está interesado en convertirse en un autor de Packt, por favor visite om authors.packtpub.c y aplicar hoy. Hemos
trabajado con miles de desarrolladores y profesionales de la tecnología, al igual que usted, para ayudarles a
compartir su conocimiento con la comunidad mundial de tecnología. Se puede hacer una aplicación general, se
aplican para un tema específico que estamos reclutando para un autor, o enviar su propia idea.
Tabla de contenido
PacktPub.com Prefacio
Colaboradores
contacto
Comentarios
2. extracción de datos
Obtención de datos de archivos planos
Conexión a una base de datos y utilizando el explorador de base de datos Obtención de datos desde
XML y JSON
La agregación de datos
4. Cargando datos
La generación de diferentes tipos de archivos de Inserción y actualización de datos
en tablas de bases de datos
La inserción de datos de
actualización de datos
Gestión de errores
Carga de una despensa de datos
Cargando una dimensión con una búsqueda de paso de combinación / actualización Carga de una
dimensión con una búsqueda de paso dimensión / actualización Carga de un Resumen tabla de hechos
5. La orquestación de su trabajo
Entender el propósito de puestos de trabajo del PDI El diseño y la
ejecución de trabajos
Creación y ejecución de un trabajo sencillo & # xA0;
secuenciación
Hacer un recorrido de las entradas de trabajo
Mandando correos electrónicos
agrupamiento definido por el usuario que ejecuta los trabajos con el Resumen de la
utilidad de la cocina
6. Introducción a la PDI
La introducción de la PDI
Instalación PDI
Caldera
Deja un comentario - dejar que otros lectores saben lo que usted piensa
Prefacio
Guía de Pentaho Data Integration inicio rápido proporciona la orientación necesaria para empezar a trabajar con Pentaho
Data Integration (PDI), que cubre las principales características de la herramienta. El libro muestra las
características interactivas de diseñador gráfico, y explica las principales capacidades ETL que ofrece la
herramienta. El contenido del libro se basa en la PDI 8.1 Community Edition (CE), la última versión. Sin embargo, se
puede utilizar con el Enterprise Edition (EE) también. Muchos de los ejemplos también funcionará con versiones
anteriores de la PDI.
para quien es este libro
Este libro es una guía útil para los desarrolladores de software, analistas de inteligencia de negocios, estudiantes de
TI, y todos los involucrados o interesados en el desarrollo de soluciones de ETL, o más en general en la realización de
Capítulo 1 , Introducción a la PDI, presenta la herramienta. Este capítulo incluye instrucciones para
la instalación PDI y le da la oportunidad de explorar y configurar el diseñador gráfico
(cuchara).
Capitulo 2 , Familiarizarse con la cuchara, explica los fundamentos de trabajar con la cuchara mediante el
diseño, depuración y pruebas de una transformación.
Capítulo 3 , La extracción de datos, discute obtener y combinar datos de diferentes fuentes. En particular, este
capítulo explica cómo obtener datos de archivos y bases de datos.
Capítulo 4 , Transformación de los datos, explica cómo transformar los datos de muchas maneras. Además, se explica cómo
obtener información del sistema y las variables predefinidas para ser utilizadas como parte del flujo de datos.
Capítulo 5 , Cargando datos, explica cómo guardar la salida de las transformaciones en archivos y bases de datos.
Además, se explica cómo cargar datos en una despensa de datos.
Capítulo 6 , La orquestación de su trabajo, muestra cómo organizar su trabajo a través de trabajos sencillos PDI. Usted
aprenderá cómo utilizar los trabajos para secuenciar tareas, tratar con archivos, enviar mensajes de correo electrónico,
PDI es una herramienta multiplataforma, lo que significa que puede ser instalado y utilizado en cualquier sistema
operativo. El único requisito es tener instalado JVM 1.8. También se necesita un buen editor de texto, por ejemplo,
Sublime III o Notepad ++. También se recomienda que usted tiene acceso a una base de datos relacional. Los
ejemplos en el libro fueron construidos con la sintaxis de PostgreSQL, pero se puede adaptar a cualquier otro
motor, tan pronto como hay un controlador JDBC para ello.
A lo largo de los capítulos, se proporcionan varios enlaces de Internet para complementar lo que se explica. Por lo
tanto, tener una conexión a Internet, mientras que la lectura es muy recomendable.
Descargar los archivos de código de ejemplo
Puede descargar los archivos de código de ejemplo para este libro de su cuenta al www. packtpub.com . Si ha adquirido este
libro otra parte, se puede visitar pport www.packtpub.com/su y registrarse para tener los archivos enviados por correo electrónico
directamente a usted. Puede descargar los archivos de código siguiendo estos pasos:
Una vez descargado el archivo, por favor asegúrese de que descomprimir o extraer la carpeta utilizando la
última versión de:
El paquete de código para el libro también está alojado en GitHub en https://github.com/PacktPu blecer /
Pentaho-Data-Integración-Quick-Start-Guía . En caso de que haya una actualización del código, que será actualizado en el
repositorio GitHub existente. También tenemos otros paquetes de código de nuestro rico catálogo de
También proporcionamos un archivo PDF que tiene imágenes en color de las capturas de pantalla /
diagramas utilizados en este libro. Puedes descargarlo aquí: http://www.packtpub.com/sites/default/fi les / descargas /
PentahoDataIntegrationQuickStartGuide_ColorImages.pdf .
convenciones usadas
CodeInText: Indica palabras de código en el texto, nombres de tabla de base de datos, nombres de carpeta, nombres de
archivo, extensiones de archivo, nombres de rutas, las direcciones URL ficticias, la entrada del usuario, y se ocupa de
Twitter. He aquí un ejemplo: "Se debe especificar la ruta completa, por ejemplo:
FULL_NAME SELECT
, injury_type
, to_char (start_date_time, 'yyyy-mm-dd') como injury_date DE injury_phases i
Negrita: Indica un nuevo término, una palabra importante, o las palabras que ve en la pantalla. Por ejemplo, las palabras en
menús y cuadros de diálogo aparecen en el texto como este. He aquí un ejemplo: "Usted puede ahorrar tiempo haciendo
clic en los campos Get botón, que llena la red con todos los campos de entrada para seleccionar."
Retroalimentación general: Email feedback@packtpub.com y mencionar el título del libro en el asunto del mensaje. Si
tiene alguna pregunta sobre cualquier aspecto de este libro, por favor envíenos un email a questions@packtpub.com.
Fe de erratas: Aunque hemos tomado todas las precauciones para asegurar la exactitud de nuestro contenido, los
errores ocurren. Si ha encontrado un error en este libro, estaríamos agradecidos si desea informar de esto a
nosotros. Por favor visita www.packtpub.com/submit-errata ,
la selección de su libro, al hacer clic en el enlace Formulario de Presentación de erratas, y entrar en los detalles.
Piratería: Si se encuentra con todas las copias ilegales de nuestros trabajos en cualquier forma en la Internet, le
agradeceríamos si nos proporcionará la dirección de ubicación o el nombre del sitio web. Por favor, póngase en contacto
Si usted está interesado en convertirse en un autor: Si hay un tema que tiene experiencia en y usted
está interesado en cualquiera de escritura o contribuir a un libro, por favor visite authors.packtpub.com .
Comentarios
Por favor dejar un comentario. Una vez que haya leído y utilizado este libro, ¿por qué no dejar un comentario
en el sitio que lo compró? lectores potenciales pueden ver y usar su opinión imparcial para tomar decisiones de
compra, nosotros en Packt puede entender lo que piensa de nuestros productos, y nuestros autores pueden
ver sus comentarios en su libro. ¡Gracias! Para obtener más información acerca de Packt, por favor visite packtpub.com
.
Familiarizarse con la cuchara
Este capítulo le mostrará cómo trabajar con la cuchara mediante el diseño, depuración y pruebas de una
transformación. Además de explorar características cuchara, también aprenderá los conceptos básicos para el
manejo de errores cuando se está diseñando una transformación.
En Capítulo 1 , Introducción a la PDI, que utilizó una cuchara para crear su primera transformación. En este
capítulo, aprenderá más sobre la experiencia de trabajar con la cuchara. En primer lugar, vamos a echar un
vistazo a su interfaz. La siguiente captura de pantalla muestra los diferentes áreas, menús y cajas de
herramientas presentes en la cuchara:
interfaz de cuchara
A continuación se proporciona una breve descripción de cada componente se muestra en la captura de pantalla
anterior:
Menú principal: Este menú incluye opciones generales, tales como abrir y guardar archivos (es decir,
transformaciones y puestos de trabajo), la edición y las funciones de búsqueda, parámetros de configuración
y opciones de ayuda.
La mayoría de las opciones en el menú principal contiene accesos directos que puede memorizar y usar, si lo prefiere hacerlo.
Barra de herramientas principal: Esta barra de herramientas sirve como una manera alternativa de crear, abrir,
y guardar archivos.
Barra de herramientas de transformación: Esta barra de herramientas contiene opciones para ejecutar, la vista
previa, y validar la transformación abierta. Área de trabajo: Esta es la zona donde se crea el trabajo. Diseño y la
vista más aquí: Cuando tenga abierta una transformación en el área principal, en la pestaña Diseño muestra un
árbol con todos los pasos disponibles para agregar a la transformación. Si hace clic en la parte superior de la
pestaña Ver, verá un árbol con todos los elementos añadidos a la transformación hasta el momento (conexiones
de bases de datos, pasos, saltos y más):
Resultados de la ejecución: Como su nombre indica, en esta ventana, se ven los resultados de la vista previa o la
ejecución de una transformación o un trabajo. Usted ya conoce la primera pestaña, Explotación florestal, donde se
muestran los detalles de la ejecución actual. Ahora que sabes los nombres y contenidos de los diferentes
componentes en la cuchara, que será más fácil para trabajar en las siguientes secciones.
Diseñar, previsualizar, y funcionando
transformaciones
En esta sección, vamos a crear una transformación que es un poco más interesante que la que ya construido. Al
hacer esto, usted tendrá la oportunidad de aprender sobre el proceso de diseño de las transformaciones, a la vez que
la vista previa de su trabajo. La tarea es la siguiente: se le dará un archivo con una lista de ciudades en los EE.UU.,
junto con sus códigos postales y sus nombres de estado. Usted tendrá que generar un archivo que contiene sólo las
ciudades en el estado de Nueva York, ordenados por código postal. Vamos a dividir la tarea en los siguientes pasos:
Vamos a empezar por el desarrollo de la primera parte de la transformación. Vamos a leer el archivo y filtrar
los datos. En este caso, la solución es bastante sencilla (esto no siempre será el caso). Hay un paso PDI
para cada una de las tareas a realizar. El paso de entrada de archivo CSV servirá para leer el archivo, y las
filas de filtro paso será filtrar las filas. Las instrucciones son las siguientes:
1. En primer lugar, crear una transformación. Esto se puede hacer desde el menú principal, desde la barra de
herramientas principal, o pulsando Ctrl + T.
2. A partir de la Entrada carpeta que contiene los pasos, arrastrar y soltar un archivo CSV de entrada
el paso a la zona de trabajo.
3. Haga doble clic en el escalón. Una ventana de configuración se mostrará.
4. Haga clic en el botón Examinar ... para localizar el archivo. Para este ejercicio, utilizaremos un
archivo que viene con el software de la PDI. Lo encontrará en la siguiente ruta, en la carpeta de
instalación: samples \ transformaciones \ Files \ Zipssortedbycitystate.csv.
5. Haga clic en Obtener campos. La cuadrícula se llenará de las columnas que se encuentran en el archivo:
Configuración de un paso de entrada de archivo CSV
6. Haga clic en Vista previa, a continuación, haga clic en OK. Aparecerá una ventana con datos de la muestra,
como se muestra en la siguiente captura de pantalla:
Data de muestra
7. Haga clic en Cerrar para cerrar la ventana de datos Examine vista previa y, a continuación, haga clic en Aceptar
para cerrar la ventana de configuración.
Ahora que hemos podido leer el archivo, los datos están disponibles para su posterior procesamiento. Las filas
procedentes de la etapa de entrada de archivo CSV fluirán hacia el siguiente paso, que será el filtro:
Desde el Fluir carpeta, arrastrar y soltar un paso filas de filtro. Haga clic en el conector de salida en el paso
de entrada de archivo CSV para crear un salto hacia el paso de filas de filtro.
Se le pedirá para el tipo de salto. Seleccionar la salida principal de paso, que se muestra de la siguiente
manera:
Haga doble clic en el escalón filas de filtro para configurar el filtro. Completar la ventana de configuración,
como se muestra en la siguiente captura de pantalla, para indicar que sólo mantendrá filas con Estados iguales
a Nueva York:
Configuración de un filtro
La simple transformación
Ahora, vamos a una vista previa de los resultados para ver si conseguimos lo que esperábamos:
Cuando se selecciona un paso, se convierte en su frontera más amplia, como se muestra en la captura de pantalla anterior.
2. Prensa F10 para previsualizar los resultados. Alternativamente, haga clic en el icono de vista previa
(El icono que se parece a un ojo) en la barra de herramientas de transformación. A continuación, haga clic en Inicio
rápido. Aparecerá una ventana con las filas filtradas, de la siguiente manera:
Vista previa de los datos
Por defecto, sólo 1.000 filas se ven de antemano. Si desea ver más datos, basta con hacer clic en Obtener más filas.
3. Haga clic en Detener para detener el proceso de visualización previa y cerrar la ventana.
Como se puede ver en la imagen anterior, en la vista previa o ejecutar una transformación, una pequeña ventana con las métricas se muestra por
encima de los pasos, mientras que las filas están siendo procesados. Estas métricas son los mismos que los que se muestran en la pestaña Pasos
métricas en la ventana Resultados de la ejecución.
La comprensión de las opciones de registro
PDI registra todas las ejecuciones de una transformación. Por defecto, el nivel de los datos de registro
es básico, pero hay siete posibles niveles de registro, que van desde la nada a Rowlevel (muy
detallado), que es el nivel más detallado de la tala. Puede cambiar el nivel de registro de la siguiente
manera:
Si va a ejecutar una transformación, en el Ejecutar una ventana de transformación, antes de hacer clic en
Ejecutar, seleccione la opción adecuada:
En esta pestaña, hay una rejilla con una fila para cada uno de los pasos de la transformación. En este caso,
tenemos dos de ellos: uno para el paso de entrada de archivo CSV, y otro para el paso de filas de filtro. Las
columnas de la cuadrícula describen lo que ocurrió en cada paso. Las siguientes son las columnas más
relevantes en nuestro ejemplo:
Lea: El número de filas procedentes de la etapa anterior escrito: El número de filas que dejan el paso
actual hacia la siguiente entrada: El número de filas procedentes de fuentes externas por ejemplo, las filas
que el archivo CSV paso de entrada se lee de la los viajes de archivos hacia el paso de filas de filtro. En
otras palabras, la salida de la etapa de entrada de archivo CSV, que se muestra en la columna escrita, es la
Además, si nos fijamos en la línea de filas de filtro en la red Pasos Metrics, el número en la columna
Escrito representa el número de filas que dejarán el paso (es decir, las filas restantes después de la
filtración).
de entrada de archivo CSV es el único paso que obtiene datos de una fuente externa - un archivo. Por lo tanto, este
es el único paso que tiene un valor mayor que cero en la columna de la entrada.
Las últimas columnas de la cuadrícula - Tiempo, Velocidad (r / s), y la entrada / salida - son métricas para monitorear el
desempeño de la ejecución. Como con el resto de las columnas de la cuadrícula, que se describirán en capítulos
posteriores.
Tratar con errores mientras que el diseño
Ahora, vamos a seguir trabajando en la transformación creada en la sección anterior. Esta vez, vamos a ordenar los
datos finales de código postal. Esta es una tarea muy sencilla, pero vamos a utilizarlo como un método para
aprender a lidiar con los errores que pueden aparecer mientras estamos diseñando:
1. A partir de la Transformar carpeta que contiene pasos, arrastrar y soltar un paso Ordenar filas
al área de trabajo.
2. Crear un salto desde el filtro de paso filas a éste. Una vez más, se le pedirá el tipo de salto.
Seleccione la salida principal de la opción de paso:
3. Haga doble clic en el icono Ordenar filas. Completar la rejilla de la siguiente manera:
clasificación de datos
4. Cierre la ventana.
5. Asegúrese de que se selecciona el paso Ordenar filas, y ejecutar una vista previa como lo hacía
antes. Si ha seguido los pasos que se explican, obtendrá un error. Hay varios indicios que ayudarán a
Un pequeño icono rojo aparecerá en la esquina superior derecha de una o más etapas. Estos son los
pasos que están causando el error.
Los fondos de las filas correspondientes en la pestaña Indicadores paso será cambiar a rojo:
Los errores en la pestaña Indicadores Paso
En este caso, como se indica en el registro, el problema fue que nos referimos a un campo que no existe. escribimos CÓDIGO
1. Haga doble clic en el escalón Ordenar filas y fijar el nombre del campo
2. Cierre la ventana y ejecutar una vista previa de nuevo
3. Usted verá las filas con Estados iguales a NY, ordenados por código postal
Guardar y ejecutar una transformación
La última tarea antes de guardar y ejecutar la transformación es para enviar los resultados a un archivo. Esto es
muy fácil:
1. A partir de la Salida carpeta, arrastrar y soltar un paso de salida de archivo de texto para el trabajo
zona. Crear un salto desde el Ordenar filas paso a este nuevo paso. Tenga en cuenta que esta vez, usted no
tiene que elegir el tipo de salto; se creará una especie de salto por defecto.
2. Haga doble clic en el escalón de salida de archivo de texto. En la ventana de configuración, proporcione un
nombre para el archivo que vamos a generar. Se debe especificar la ruta completa, por ejemplo, C: / Pentaho /
data / ny_cities.
Usted no tiene que escribir la extensión; se añade de forma automática, como se indica en el cuadro de texto de extensión.
3. Cierre la ventana.
La transformación es completa. La única tarea que realizar ahora es salvar y ejecutarlo, de la siguiente manera:
2. Una vez que la transformación ha guardado, puede ejecutarlo. Hacerlo pulsando F9. En
en la ficha Registro de la ventana Resultados de la ejecución, verá el registro de la ejecución. Si se
selecciona la ficha de datos de vista previa en la misma ventana, verá datos de las muestras procedentes de
la etapa seleccionada actualmente. A modo de ejemplo, haga clic en el escalón filas de filtro y ver los datos
de la ficha de datos de vista previa. Verá todas las filas para el estado de Nueva York, aunque todavía están
fuera de servicio:
ficha de datos de vista previa
3. Si hace clic en el escalón Ordenar filas, verá lo mismo, pero ordenada. Además, un archivo debe
haber sido creado con la misma información. Examine su sistema para buscar el archivo
generado. Su contenido debe ser algo como lo siguiente:
. . .
. . .
ELMIRA, NY; 14925
HOLTSVILLE; NY; 501 Fishers Island,
NY; 6390
Si nos fijamos en las líneas de la muestra, se dará cuenta de que el código 501 está entre 14925 y 6390. Los códigos no se ordenan por número,
pero en orden alfabético. Esto se debe a que el código postal se definió como una Cuerda en la etapa de entrada.
La definición y el uso de variables Hervidor
En PDI, puede definir y utilizar variables, tal como lo hace cuando el código en cualquier lenguaje de
programación. Ya hemos definido un par de variables cuando creamos el kettle.properties presentar en Capítulo 1 ,
Introducción a la PDI. Ahora, vamos a ver dónde y cómo usarlos.
Es muy sencillo: cada vez que ve un signo de dólar al lado de un cuadro de texto, puede utilizar una variable:
cuadros de texto de ejemplo que permiten las variables
Puede hacer referencia a una variable encerrando su nombre entre llaves, precedidas de un signo de dólar
(por ejemplo, $ { INPUT_FOLDER}).
Una notación menos usado para una variable es la siguiente: %% < nombre de variable> %% ( por ejemplo, %% INPUT_FOLDER
%%).
Volvamos a la transformación creada en la sección anterior. En lugar de un valor fijo para la ubicación
del archivo de salida, vamos a utilizar variables. A continuación se describe cómo hacerlo:
1. Abra la transformación (si la había cerrado). Esto se puede hacer a partir del menú principal o desde la barra de
herramientas principal.
2. Haga doble clic en el escalón de salida de archivo de texto. Sustituir la ruta completa de la ubicación del
archivo con el siguiente: $ { OUTPUT_FOLDER} / $ {nombre del archivo}.
Tenga en cuenta que puede combinar las variables, y también se puede mezclar con los nombres de variables de texto estático.
4. En la ventana que aparece, seleccione la pestaña Variables. Podrás ver los nombres de las dos variables - OUTPUT_FOLDER
y NOMBRE DEL ARCHIVO:
Variables en la ejecutar una ventana de Transformación
los OUTPUT_FOLDER la variable ya tiene un valor, que se toma de la kettle.properties expediente. los NOMBRE
DEL ARCHIVO variable no tiene un valor aún.
1. A la derecha del nombre, escriba el nombre que desea dar al archivo de salida, como se muestra en la
siguiente captura de pantalla:
Al lado de las variables definidas por el usuario - los creados por usted, ya sea en el
kettle.properties presentar o en el interior de la cuchara - PDI tiene una lista de variables predefinidas que también se puede
utilizar. La lista incluye, principalmente, las variables relacionadas con el medio ambiente (por ejemplo, $ { os.name}, para el
nombre del sistema operativo en el que se está trabajando, o $ { Internal.Entry.Current.Directory}, que hace referencia al directorio de
archivos donde se guarda el trabajo o transformación actual). Para ver la lista completa de variables, tanto predefinido y
definida por el usuario, simplemente coloque el cursor dentro de cualquier cuadro de texto donde se permite una variable,
y pulse Ctrl + Barra espaciadora. Se mostrará una lista completa.
Si hace clic en cualquiera de las variables de un segundo, se mostrará el valor real de la variable,
como se indica en la siguiente captura de pantalla:
las variables PDI
variables. Uno de ellos es la creación de una parámetro con nombre. Los parámetros con nombre son las variables que se
definen en una transformación, y pueden tener un valor por defecto. Sólo tiene que suministrar un valor si es diferente de la
3. Haga clic en la pestaña Variables. Aquí es donde se definen los parámetros con nombre.
4. Completar la rejilla como se muestra, en sustitución de la ruta en el ejemplo con la ruta real donde
tiene instalado PDI:
5. Cierre la ventana.
6. Haga doble clic en el escalón de entrada de archivo CSV. Vuelva a colocar la ruta completa de la ubicación
del archivo con el siguiente: $ { SAMPLES_DIR} /Zipssortedbycitystate.csv.
7. Cierre la ventana y guardar la transformación.
8. Haga clic F9 para ejecutar la transformación. La ficha Parámetros en las Opciones de ejecución
ventana mostrará el parámetro con nombre que que acabamos de definir:
La ejecución de una transformación con un parámetro denominado
9. Haga clic en Ejecutar. PDI reemplazará el valor de la variable, tal y como lo hizo
antes de.
Tenga en cuenta que esta vez, no proporcionar un valor para la variable, ya que ya tenía un valor adecuado. Ahora,
supongamos que nos movemos las muestras carpeta a una ubicación diferente. A continuación se describe cómo
Haga clic en Ejecutar. PDI reemplazará el valor de la variable con el valor que ha proporcionado, y
leerá el archivo desde esa ubicación.
Ejecutar transformaciones con la utilidad
Pan
Hasta ahora, usted ha usado una cuchara para crear y ejecutar transformaciones. Sin embargo, si desea ejecutar una
transformación en un entorno de producción, se lo use una cuchara, pero una utilidad de línea de comandos denominada Pan.
Si explora el directorio de instalación PDI, verá dos versiones de la utilidad: Pan.bat y Pan.sh. Utilizará
el primero si usted tiene un entorno Windows, y el segundo para otros sistemas.
En el siguiente tutorial paso a paso, vamos a suponer que usted tiene Windows, pero usted debe hacer los ajustes necesarios
si usted tiene un sistema diferente.
La forma más sencilla de ejecutar una transformación con Pan es proporcionar la ruta completa de la transformación
que desea ejecutar. Puede ejecutar Pan en Windows de la siguiente manera:
Supongamos que desea ejecutar la primera transformación creado en este capítulo, que se encuentra
en el directorio siguiente:
c: /pdi_labs/my_first_transformation.ktr
/file=c:/pdi_labs/my_first_transformation.ktr Pan
Debe incluir la ruta completa para el archivo de transformación. Si el nombre contiene espacios, escríbala entre
comillas dobles.
Después de ejecutar el comando, verá el registro de la ejecución, que es el mismo registro que se ve en la
ventana de resultados de ejecución en la cuchara. Con el fin de cambiar la nivel de registro, sólo tiene que añadir lo
siguiente:
Los valores posibles para el nivel de registro son Nada, Minimal, error, básico, detallado, de depuración,
y Rowlevel.
A modo de ejemplo, el siguiente comando imprimirá no sólo el registro de base, sino también los detalles de
cada fila que se está procesando:
. . .
06/10/2018 12:33:43 - Ordenar rows.0 - Leer consecutivas: [YONKERS], [Nueva York], [10701] 06/10/2018 12:33:43 - Ordenar rows.0 - Leer consecutivas: [
YONKERS], [Nueva York], [10703] 06/10/2018 12:33:43 - Ordenar rows.0 - Leer consecutivas: [YONKERS], [Nueva York], [10705] 06/10/2018 12:33:43 -
Ordenar rows.0 - Leer fila: [YORKVILLE], [Nueva York], [13495] 06/10/2018 12:33:43 - Ordenar rows.0 - Leer consecutivas: [YULAN], [Nueva York], [12792]
06/10/2018 12:33:43 - Ordenar rows.0 - Señalización 'de salida hace' a 0 conjuntos de filas de salida. 06/10/2018 12:33:43 - Ordenar rows.0 - procesamiento
final (I = 0, O = 0, R = 1146, W = 1146, T = 0, E = 0)
En la última versión de nuestra transformación, hemos añadido un parámetro denominado por la ruta donde PDI tuvo que
buscar el archivo de entrada. En Cuchara, que ya ha proporcionado el valor en la ventana de ejecución. Cuando se ejecuta la
transformación con Pan, lo hace mediante el uso de la PARAM opción, de la siguiente manera:
En nuestro ejemplo, suponiendo que el nuevo valor es c: / muestras, construimos el parámetro de línea de
aprendido a trabajar con la herramienta cuando se creó, previamente, y corrió transformaciones. Cuando trabajaba
con las transformaciones, que tuvo la oportunidad de utilizar las variables Hervidor de agua, tanto predefinidos y
definidos por el usuario. También ha aprendido a lidiar con los errores comunes. Por último, experimentado con la
utilidad Pan, que se utiliza para ejecutar transformaciones desde la línea de comandos. Ahora que ha visto una visión
general de la herramienta, ya está listo para entrar en los detalles de la extracción de datos. Ese será el tema de la Capítulo
3, La extracción de datos.
extracción de datos
La extracción de los datos tiene que ver con la obtención y la combinación de datos de diferentes fuentes, antes de
transformarse en diferentes maneras. PDI ofrece conectividad a una gran lista de fuentes de datos, incluyendo todo tipo de
bases de datos, tanto comerciales como de código abierto. También se puede conectar a una amplia variedad de archivos,
estructurados y no estructurados. La lista incluye archivos CSV, archivos de propiedades, archivos de texto de ancho fijo y
formatos propietarios. En particular, este capítulo explicará cómo obtener datos de archivos planos y bases de datos
relacionales.
En esta sección, aprenderá cómo obtener datos de archivos planos (por ejemplo,. TXT
y CSV). Vamos a empezar por explicar cómo leer y configurar este tipo de archivos, y luego vamos a explicar
cómo PDI le permite leer varios archivos a la vez, archivos comprimidos y archivos almacenados en lugares
remotos.
La lectura de archivos planos
En el capítulo anterior, hemos experimentado con la lectura de un archivo simple, pero esta vez vamos a entrar en detalles
Por esto y algunos de los futuros ejercicios de este libro, vamos a utilizar. csv archivos con las encuestas de la página web de
Airbnb. Los datos de la muestra se pueden descargar desde http://tomslee.net/airbnb-data-collection-ge t-la-data .
Para este ejercicio, vamos a leer y configurar un archivo con datos sobre una encuesta realizada en Amsterdam.
El archivo se ve de la siguiente manera:
archivo de ejemplo
Esta vez, vamos a utilizar un paso de entrada de archivo de texto, que es mucho más flexible que la entrada de archivos
5. Después de seleccionar el archivo, haga clic en Agregar. La ruta completa para el archivo será
movido desde el archivo o directorio cuadro de texto a la rejilla inferior, como se muestra en la siguiente captura de
pantalla:
No dude en reemplazar cualquier parte del nombre completo con los nombres de variables, como ha aprendido a hacer en el capítulo 02 , Familiarizarse
con la cuchara.
6. Haga clic en la pestaña Contenido. Como se muestra en la siguiente captura de pantalla, PDI asume que el
separador será una coma (,), y que el archivo tendrá una sola línea como una cabecera. Por lo tanto, en este
caso, no tenemos que modificar nada en la pantalla:
Configuración de los contenidos de un archivo
7. Ahora, seleccione la ficha Campos. Aquí es donde se definen los campos procedentes del archivo, junto con
sus metadatos.
8. Haga clic en Obtener campos. Una pequeña ventana le pedirá el número de líneas de muestreo.
9. Haga clic en OK, así que adivina el PDI metadatos (el tipo y formato de cada campo) basado en las líneas
de la muestra.
10. Aparecerá una ventana de exploración resultados. Cierralo. Usted verá cómo la red se llena con todos los
campos, tipos de datos y las máscaras, de acuerdo con lo que infiere PDI:
Si, en las ventanas que piden las líneas de muestra, que habíamos hecho clic en Cancelar en cambio, todos los campos se
habría definido como Cuerda.
Ya fuera del PDI o que poblaron la red, todavía se pueden hacer las correcciones necesarias. Por ejemplo,
para la habitación campo, PDI asignado el Número tipo. Puede cambiar de forma segura a Entero, así como sustituir la
mascarilla con un #, que representa un número sin decimales. Además, se puede cambiar el nombre de una
columna si no te gusta el nombre del archivo. Esto no afectará el resultado. La siguiente captura de pantalla
muestra algunos posibles cambios que podrían aplicarse a esta configuración archivo de ejemplo:
Cuadrícula con campos modificar manualmente
Ahora, se recomienda que realice una verificación final, para ver si los datos se han configurado
correctamente:
Haga clic en filas Vista previa y, a continuación, haga clic en OK. Aparecerá una ventana con las primeras filas del
archivo de formato, como se indica en la parrilla de campos:
Previsualización de filas
En el tutorial, hemos utilizado el paso de entrada de archivo de texto, lo que nos permite leer archivos de texto plano. Para leer otros tipos
de archivos (por ejemplo, archivos de Excel o archivos Bien), hay pasos dedicados. Usted no va a tener dificultades para configurar ellos,
ya que comparten muchos valores de configuración con el paso utilizamos.
La lectura de archivos de gran versatilidad
En el tutorial anterior, se lee un solo archivo. El paso de entrada de archivo de texto le permite leer más de un archivo al
mismo tiempo, siempre y cuando los archivos comparten el mismo formato. Supongamos que se desea leer todos los
archivos con las encuestas llevadas a cabo en 2015. Hay tres de ellos en nuestro conjunto de archivos, de la siguiente
manera:
tomslee_airbnb_amsterdam_0080_2015-01-19.csv
tomslee_airbnb_amsterdam_0106_2015-03-17.csv
tomslee_airbnb_amsterdam_0244_2015-12-16.csv
Podemos leerlos escribiendo sus rutas completas en la red de los archivos seleccionados, un archivo por cada fila, como
Como alternativa, debido a que los nombres de los archivos siguen un patrón, en lugar de escribir todos los
nombres, podríamos decidir escribir una expresión regular que coincide con todos los nombres de archivo.
En cualquier caso, para asegurarse de que la PDI es la lectura de los archivos que esperamos, podemos hacer clic en
Mostrar nombre de archivo (s) ..., y aparecerá una ventana con la lista completa de los archivos que se leerá:
Lista de archivos que coincidan con una expresión regular
También puede leer los archivos comprimidos. Los archivos que hemos estado usando fueron descargados en
formato ZIP, y se puede leer los archivos sin descomprimir el original. Por ejemplo, suponga que desea leer el
archivo en la primera transformación sin necesidad de extraer los archivos de la. cremallera expediente. Puede
escribir postal: c: \ samples \ amsterdam.zip s3_files \ Ámsterdam \ tomslee_airbnb_amsterdam_0025_201405-24.csv como el nombre del archivo. En general,
la sintaxis para la lectura de un archivo en particular comprimido como un archivo ZIP es postal: <archivo comprimido> <nombre
de archivo>, donde < archivo comprimido> es la ruta completa para el. cremallera presentar y < nombre de archivo> es el nombre del archivo a
PDI utiliza el Sistema de archivos virtual (VFS), lo que le permite conectarse a una variedad de sistemas de
archivos, por ejemplo, Amazon S3, HDFS, o Google Cloud Storage. En particular, cuando se especifica una URL
VFS en lugar de la notación tradicional, puede referirse tanto a los archivos locales y remotos, que también pueden
ser almacenados en un formato comprimido, como se muestra en el ejemplo en la última sección. En particular, a
partir de la PDI 8.1, se puede leer el contenido de Google Drive, que se explicará en la siguiente sección.
La lectura de archivos de Google Drive
La lectura de archivos Google Drive es muy simple, pero requiere cierta configuración la
primera vez que lo intente.
En primer lugar, tiene que habilitar la API de Google Drive y generar las credenciales que
permitirán PDI para acceder a los recursos en la unidad:
2. Mientras está conectado a la plataforma de Google, cree una cuenta de servicio. Puede hacerlo accediendo a
Menú de navegación | IAM y administración | Las cuentas de servicio:
3. Ahora, generar las credenciales. Puede hacerlo mediante la navegación a las API y Servicios | credenciales |
Crear credenciales y la selección de ID de cliente de OAuth:
La generación de credenciales
4. Después de unos pocos clics, usted estará terminado, como se muestra en la siguiente captura de
pantalla:
5. Ahora, haga clic en el icono resaltado a descargar las credenciales en un formato JSON.
Cambie el nombre del archivo generado a client_secret.json y copiarlo en la carpeta siguiente, en el
interior del lugar de instalación PDI: / plugins / pentahogoogledrive-VFS / credenciales.
6. Con el fin de reconocer el archivo, tendrá que reiniciar cuchara. Ahora, supongamos que usted quiere
leer un archivo llamado listings.csv, guardado en una carpeta con el nombre pentaho_samples Google Drive. A
En general, para la lectura de un archivo guardado en Google Drive, se especifica su nombre como Google Drive: // <nombre de archivo>, donde
el nombre del archivo incluye la ruta completa en la unidad.
3. Después del primer intento de acceso al archivo (por ejemplo, haciendo clic en Mostrar contenido del
archivo), se le pedirá que inicie sesión en su cuenta de Google y permitir PDI para acceder a la unidad.
Después de hacer esto, PDI almacenará un token de seguridad llamada StoredCredential en la misma carpeta donde ha guardado las
credenciales. Esto le permitirá conectar más tarde, sin autenticarse de nuevo.
4. Una vez que haya concedido el acceso a la unidad de la PDI, se puede configurar el paso de leer el archivo
que se encuentra en la unidad de la misma forma que lo hace al leer archivos locales.
datos obtenidos de bases de datos
relacionales
bases de datos relacionales son algunas de las fuentes más comunes de datos en cualquier proceso de ETL.
PDI le permite conectarse y obtener datos de múltiples motores RDBMS, incluyendo los más populares (por
ejemplo, Oracle o MySQL), sino también para otros motores. El único requisito es que existe el controlador
JDBC adecuado. En esta sección, aprenderá cómo conectarse a, explorar y obtener datos de una base de
datos.
Conexión a una base de datos y utilizando el
Hay dos cosas que usted debe hacer con el fin de conectarse a una base de datos, si la intención de utilizar sus datos
dentro de PDI:
Para fines de demostración, vamos a conectar a una PostgreSQL motor con el que se ha instalado una base de datos de
deportes, disponible para su descarga en http://www.sportsdb.org/sd que tiene un JDBC d rive / muestras .
Asegúrese de que tiene un controlador JDBC, a. tarro Archivo - para el motor. Una vez que lo tienes, que
tendrá que copiarla en el lib carpeta en el directorio de instalación de la PDI y reinicie cuchara.
PDI 8.1 viene con un controlador para PostgreSQL, pero este no es el caso para todos los motores, así que asegúrese de que usted
obtenga el controlador adecuado para su motor.
La instalación del conductor sólo tiene que hacer una vez en su entorno. Ahora que ha instalado el
controlador, puede crear una conexión con la base de datos, de la siguiente manera:
Dependiendo del tipo de base de datos, puede elegir los métodos de acceso que no sean nativos (JDBC). Otras
opciones incluyen ODBC, JNDI, y la OCI.
4. Haga clic en Prueba para verificar que la conexión está bien definido, y que se puede llegar a su base de
datos de PDI.
5. Haga clic en Explorar. El Explorador de base de datos se mostrará.
6. El Explorador de base de datos le permite explorar las tablas y vistas de la base de datos y
ejecutar consultas y sentencias DDL.
7. Haga clic en el nombre de cualquier tabla. Un menú emergente se mostrará, que le ofrece varias opciones, como
se muestra en la siguiente captura de pantalla:
Exploración de una mesa con el Explorador de base de datos
Se puede llegar a la base de datos Explorador cualquier momento que desee, ya sea de menú principal o en la ficha Ver.
La conexión de base de datos que acaba de definir estará disponible en la transformación actual,
como se verá en breve. Si quieres que esté disponible en las nuevas transformaciones, hay que
compartirlo, de la siguiente manera:
10. Haga clic en la conexión de base de datos y haga clic en Compartir. El nombre de la conexión se
convertirá en negrita, lo que significa que la definición estará disponible fuera del ámbito de la
transformación actual:
Conexión compartida
La información sobre las conexiones de base de datos compartidos se guarda en el shared.xml presentar, dentro del directorio principal de la caldera.
Obtener datos de una base de datos
Ahora que ha definido una conexión a una base de datos, puede obtener datos de él. A continuación se
describe cómo hacerlo:
La conexión se selecciona porque es la única conexión de base de datos que hemos creado. Si hay más de uno,
usted debe mostrar la lista desplegable y seleccionar la conexión que se va a utilizar.
3. Ahora bien, utilizar el área de SQL para escribir una consulta SQL. En este caso, vamos a escribir una consulta que
lista las personas, junto con las lesiones que tenían en julio de 2007:
FULL_NAME SELECT
, injury_type
, to_char (start_date_time, 'yyyy-mm-dd') como injury_date DE injury_phases i
4. Haga clic en Vista previa y, a continuación, haga clic en OK. Una ventana de vista previa aparecerá con ejemplos
de filas - los resultados de ejecutar la consulta:
Datos de ejemplo de una base de datos
5. Cierre la ventana de vista previa y haga clic en OK para cerrar el paso de entrada de la tabla.
6. Con el paso seleccionado, pulse Ctrl + Barra espaciadora para inspeccionar la salida
metadatos. Verá cómo PDI traduce los tipos de datos de base de datos en sus propios tipos:
metadatos de ejemplo
Vamos a destacar algunas de las características de la etapa de entrada de la tabla, de la siguiente manera:
Puede escribir cualquier sentencia SQL, que van desde una simple seleccionar * de la tabla
consulta a las consultas más complejas, como la que en el ejemplo. Se recomienda que utilice ANSI
SQL, pero se puede escribir cualquier consulta con una sintaxis válida en el motor que se utiliza. Por
ejemplo,
to_char () función es perfectamente válido en PostgreSQL, pero puede causar un error de sintaxis en un motor
diferente. Si SELECCIONAR contiene varios campos de una tabla, puede utilizar Get SQL instrucción de selección
... como un atajo. Esto le ayudará a evitar tener que escribir todos los campos manualmente.
Por último, vale la pena señalar que en una sola transformación, que no se limitan a la ejecución de una sola consulta.
Usted puede tener más de un paso de entrada de la tabla, y esos pasos puede ejecutar consultas conectados a
Aparte de los motores RDDMS, PDI puede conectarse y obtener datos de las tiendas de columna (por ejemplo, Cassandra y
HBase) y de almacenamiento de documentos (por ejemplo, MongoDB). Estas fuentes tienen sus particularidades, y por lo tanto
hay pasos separados para conectar con ellos. Usted puede encontrar los pasos correspondientes en el interior del big Data carpeta en
la cuchara. Si necesita configurar cualquiera de los pasos, se encuentra en su documentación https://help.pentaho.com/Documentation/
8.1 / Productos / Data_Integration / Transformation_Step_Reference , o puede hacer clic en el botón de ayuda en sus ventanas de configuración. Además, existe la
posibilidad de conectarse a la base de datos de Neo4J gráfica, mediante la instalación de un plugin específico disponible a través
del mercado. El mercado es un lugar para buscar e instalar plugins PDI para diferentes propósitos, que van desde la conexión a
una fuente no está disponible fuera de la caja a la aplicación de las capacidades de aprendizaje automático. El mercado está
disponible a través de Herramientas | Mercado en el menú principal de la cuchara.
datos obtenidos de otras fuentes
Hasta ahora, hemos estado recibiendo datos de archivos planos y bases de datos. Estas son dos de las fuentes de
datos más comunes, pero hay muchos más tipos de fuentes disponibles en el PDI, principalmente agrupados en,
pero no limitado a, la Entrada carpeta. En las subsecciones siguientes se presentarán algunas de las fuentes que no
cubrimos en los apartados anteriores, que también son de uso.
XML y JSON
Con PDI, puede leer archivos XML o analizar los campos cuyos contenidos son de una estructura XML. En ambos
casos, es analizar el código XML con los datos obtenemos de paso de entrada XML. Para especificar los campos a
leer, se utiliza la notación XPath. Cuando el XML es muy grande o compleja, hay un paso alternativo: Entrada XML
corriente (StAX).
Del mismo modo, se puede analizar estructuras JSON con el paso de entrada JSON. Para especificar los
campos en este caso, se utiliza la notación JSONPath. También, puede analizar XML y JSON estructuras con
JavaScript o Java de código, utilizando el paso Valor Java Script Modificado o el paso definido por el usuario
Hervidor
También existe la posibilidad de obtener información del sistema (por ejemplo, la fecha actual o la memoria libre
JVM). Usted puede escoger cualquiera de estos y añadirlos como parte de su flujo. Puede hacerlo utilizando el
Sistema de Información Obtener paso. Echar un vistazo a la siguiente pantalla:
En este caso, además de todos los campos procedentes del archivo de entrada, verá un nuevo campo,
llamado hoy, que contiene la fecha del sistema. Si ejecuta una vista previa de la etapa anterior, se verá algo
como lo siguiente:
Ahora, vamos a ver lo que podemos hacer con las variables. De la misma manera que se agrega la información del
sistema, se puede añadir el valor de una o más variables Kettle, ambos definidos por el usuario y predefinido (por ejemplo,
el nombre del sistema operativo, $ { os.name}, o el directorio principal para el usuario que ha iniciado, $ { user.dir}). Al igual que en el
ejemplo anterior, después de obtener una variable, su valor se convierte en un nuevo campo en el conjunto de datos.
También puede crear un conjunto de datos nuevo conjunto, compuesto por las variables Kettle, de la siguiente manera:
4. Cierre la ventana y ejecutar una vista previa. El resultado será un conjunto de datos con tres campos y una sola fila,
que se muestran como sigue:
Vista previa de un conjunto de datos con variables
PDI también puede tirar de la transmisión de datos. es compatible Java Messaging Service (JMS), protocolo MQTT, y Apache Kafka.
Si quieres probar cualquiera de estos, se encuentran los correspondientes pasos de consumo bajo la categoría de Transmisión.
Como mencionamos anteriormente, usted puede golpear el botón Ayuda en la ventana de configuración para averiguar los detalles para el
uso de cada uno de los pasos mencionados en la sección anterior.
La combinación de diferentes fuentes en un único
conjunto de datos
En este capítulo, que ha estado recibiendo datos de diferentes tipos de fuentes. En todos los casos, la fuente
de los datos era único; por ejemplo, un archivo plano o el resultado de una única consulta. Sin embargo, lo que
si tuviéramos más de una fuente, y queríamos combinarlos y usarlos como un único conjunto de datos? En esta
sección, aprenderá cómo hacer frente a esta situación muy común.
La manipulación de los metadatos
Veamos el primer ejercicio de nuevo, donde se lee un archivo que contiene las encuestas. En esa ocasión, se
lee toda la información en el archivo. Ahora, supongamos que estamos interesados en tan sólo unos pocos
campos: room_id, room_type, barrio, overall_satisfaction, se acomoda, y precio. También, queremos cambiar el nombre de algunos campos, y
los queremos en un orden diferente.
1. Abra la transformación creada en el primer ejercicio y guardarlo con un nombre diferente. Puede hacerlo
desde el menú principal o barra de herramientas principal.
2. A partir de la Transformar carpeta, arrastrar y soltar un paso Seleccionar los valores. Crear un vínculo
Del archivo de texto paso a archivo de entrada de este nuevo paso.
3. Haga doble clic en el paso Seleccionar los valores. Lo vamos a utilizar para seleccionar, ordenar y cambiar el
nombre de los campos. Para ello, rellenar la cuadrícula de la siguiente manera:
Puede ahorrar tiempo haciendo clic en los campos Get botón, que rellena la cuadrícula con todos los campos de entrada para seleccionar. A
continuación, puede ajustar los valores manualmente.
4. Cierre la ventana y, con el cursor del ratón sobre el icono, pulse Ctrl + Barra espaciadora. Aparecerá
una ventana con los metadatos que viene del paso:
metadatos de salida
5. Cierre la ventana.
6. Mantener el paso seleccionado, ejecute una vista previa. Verá lo siguiente:
los Seleccione los valores paso se utiliza normalmente para seleccionar, reordenar y cambiar el nombre de los campos,
igual que lo hizo. También se puede utilizar para cambiar los metadatos (el tipo o máscara) de uno o más campos.
Tenga en cuenta que en el paso de entrada de archivo de texto, puede nombrar a los campos de otra manera, sin la necesidad de utilizar un paso
Seleccionar los valores. Sin embargo, no se puede alterar el orden de los campos de entrada, ni se puede ignorar campos en el medio del archivo. Por
lo tanto, tendrá que utilizar los valores seleccionar Paso adelante.
La combinación de dos conjuntos de datos diferentes en
Continuando con el mismo ejercicio, supongamos que también queremos leer uno de los archivos con una encuesta
realizada en 2017, y crear un único conjunto de datos con información de ambos archivos. Si inspecciona los archivos, sin
embargo, se puede observar que los archivos más nuevos no tienen el mismo formato que los de encuestas realizadas en
2015. Los campos están en un orden diferente, y también hay nuevos campos. Si tenemos la intención de leer en un viejo y
un nuevo archivo, no podemos hacerlo a través de un solo paso. Vamos a trabajar en la solución a este, de la siguiente
manera:
4. Añadir un paso Seleccionar valores y configurarlo justo como lo hizo anteriormente, con el fin de mantener los mismos
campos, en el mismo orden, con los mismos nombres. El archivo que estamos leyendo tiene un nuevo campo que
también nos interesa: el nombre del lugar. Por lo tanto, añadir este campo, también. La configuración se muestra en
la siguiente captura de pantalla:
5. Asegúrese de que se selecciona el paso Seleccionar los valores, y ejecutar una vista previa. Tú
verá algo como lo siguiente:
6. Ahora, a partir del flujo de carpetas, arrastrar y soltar un muñeco (no hacer nada) paso, y crear un enlace desde los
primeros valores de seleccionar Paso a esa pregunta. Cuando se le preguntó por el tipo de enlace, seleccione la
salida principal de paso. A continuación se muestra lo que tiene hasta ahora:
7. Ahora, con el fin de unificar las bases de datos, crear un salto de los segundos valores seleccione Paso a paso el
maniquí. Después de seleccionar el tipo de salto, una ventana de advertencia se mostrará, que le dice que la
etapa de destino está recibiendo filas con diseños mixtos.
El problema aquí es que no se puede combinar con diferentes conjuntos de datos de metadatos. En este caso, en el
segundo flujo de datos, tenemos la descripción campo no se encuentra en la otra corriente. No queremos para quitar el
campo, por lo que la solución es añadir un campo con el mismo nombre en el primer conjunto de datos:
1. En la carpeta de Transform, arrastre un paso Añadir constantes.
2. La caída de la etapa sobre el vínculo entre los primeros valores de seleccionar y el paso simulada.
La división de un salto
4. Haga doble clic en Añadir las constantes de paso y configurarlo para añadir el
descripción campo, con un valor por defecto:
5. Cierre la ventana.
6. Seleccione el paso del maniquí y de ejecutar una vista previa. Verá los datos procedentes de los dos flujos de
datos:
Vista previa de los datos
Cada vez que desee combinar dos o más flujos de datos, se puede proceder como lo hizo aquí, haciendo los cambios
necesarios mediante la adición o modificación de los campos, por lo que los metadatos de salida de todas las
corrientes es el mismo.
En este caso, se utilizó una etapa simulada, que se utiliza principalmente como un marcador de posición para fines de prueba; Sin
embargo, podríamos haber utilizado cualquier otro paso en su lugar.
Resumen
En este capítulo, usted aprendió cómo obtener datos de diferentes fuentes, convirtiéndola en la PDI conjuntos de datos.
En primer lugar, ha aprendido a obtener datos de archivos planos almacenados en su sistema local. También tuvo la
oportunidad de configurar PDI para acceder a los archivos comprimidos y archivos almacenados en una unidad de
Google.
Después de haber trabajado con los archivos, usted comenzó a interactuar con bases de datos relacionales. Usted
aprendió cómo configurar una conexión a una base de datos, la forma de explorar su contenido, y cómo obtener datos de
él.
Por último, se les hizo entrega de otras fuentes distintas de los archivos y bases de datos de civil, incluidas las fuentes
y fuentes de información relacionada con el sistema XML y JSON. Después de haber explorado las diferentes
opciones para obtener información externa, que ha aprendido cómo combinar dos o más conjuntos de datos en una
sola. Esta tarea se utiliza no sólo para la extracción y la combinación de fuentes externas, pero en muchas situaciones
Ahora que ya tiene los datos, ya está listo para transformarla. Usted aprenderá cómo hacerlo en el siguiente
capítulo.
transformar los datos
La transformación de datos se trata de la manipulación de los datos que fluyen desde el paso a paso en una
transformación PDI. Hay muchas formas en que esta transformación se puede hacer. Podemos modificar los datos de
entrada, cambiar su tipo de datos, añadir nuevos campos, corregir datos erróneos, ordenar, agrupar y filtrar
información no deseada, los datos agregados de varias maneras, y más. En este capítulo vamos a explicar algunas de
Hasta ahora, hemos visto cómo crear un conjunto de datos PDI utilizando principalmente los datos procedentes de los
archivos o bases de datos. Una vez que tenga los datos, hay muchas cosas que puede hacer con ella en función de sus
necesidades particulares. Un requisito muy común es la creación de nuevos campos en los que los valores se basan en los
valores de los campos existentes. El conjunto de las acciones contempladas en esta sección no es una lista completa de
las opciones disponibles, sino que incluye los más comunes, y le inspirará cuando se llega a poner en práctica otros.
Los archivos que vamos a utilizar en esta sección se construyeron con los datos descargados de www.numbeo.com , un sitio que contiene
información sobre las condiciones en las ciudades y países de todo el mundo viviente. Para el aprendizaje de los temas de este
capítulo, usted es libre de crear sus propios datos. Sin embargo, si desea reproducir los ejercicios exactamente como se explican, se
necesitan los archivos antes mencionados de www.numbeo.com .
Antes de continuar, asegúrese de descargar el conjunto de datos que viene con el paquete de código para el libro.
Extracción de datos de los campos existentes
En primer lugar, vamos a aprender cómo extraer los datos de los campos que existen en nuestra base de datos con el fin de
generar nuevos campos. Para el primer ejercicio, vamos a leer un archivo de datos que contiene aproximadamente el costo
Rango Ciudad coste de la vida Índice de Renta coste de la vida Plus Renta Índice Abarrotes Índice restaurante índice de precios local del poder adquisitivo 1 Zúrich, Suiza 14
71,70 104,38 138,98 129,74 130,96 3 Basilea, Suiza 130.68 49.68 91.61 127,54 127,22 139,01 4 Berna, Suiza 128,03 43,57 87,30 132,70 119,48 112,71 5 Lausanne, Suiza 127,50 52
91,70 118,15 133,19 88,95
. . .
Como se puede ver, el campo de la ciudad también contiene el nombre del país. El propósito de este ejercicio es
extraer el nombre del país de este campo. Con el fin de hacer esto, vamos a ir a través de los siguientes pasos:
1. Crear una nueva transformación y el uso de un paso de entrada de archivo de texto para leer el
cost_of_living_europe.txt expediente.
2. Arrastre un paso separado campos de la categoría Transformar y crear un salto de la entrada de archivo de
texto hacia el paso de Split campos.
3. Haga doble clic en el paso y configurarlo, como se muestra en la siguiente captura de pantalla:
Como se puede ver, el paso de Split Los campos que se puede utilizar para dividir el valor de un campo en dos o más
campos nuevos. Este paso es perfecto para el propósito de obtener el nombre del país ya que los valores eran fáciles
de analizar. Tuvimos un valor, a continuación, una coma, a continuación, otro valor. Esto no es siempre el caso, pero
PDI tiene otros pasos para realizar tareas similares. Veamos otro método para la extracción de piezas de un campo.
Esta vez, vamos a leer un archivo que contiene los alimentos diarios comunes y sus precios. El archivo tiene dos
Leche (regular), (0,25 litros) 0,19 € Pan del Fresh pan blanco (125,00 g)
0,24 € Rice (blanco), (0,10 kg) 0,09 € Huevos (regular) (2,40) 0,33 € queso
local (0,10 kg) 0.89 €
Supongamos que queremos dividir la Comida campo en tres campos para el nombre, la cantidad y el
número de unidades, respectivamente. Tomando el valor de la primera fila, Leche (regular), (0,25 litros), como un
ejemplo, el nombre sería Leche (regular), la cantidad sería 0.25, y la unidad sería litro. No podemos resolver esto
como lo hicimos antes, pero podemos usar expresiones regulares en su lugar. En este caso, la
expresión a utilizar será (. +) \ (([ 0-9] +) (litros. | G | kg | cabeza |) \) *..
1. Crear una nueva transformación y el uso de un paso de entrada de archivo de texto para leer el
recommended_food.txt expediente.
2. Arrastre un paso Evaluación expresión regular de la categoría de secuencias de comandos y crear un salto de la
entrada de archivo de texto hacia este nuevo paso.
3. Haga doble clic en el paso y configurarlo como se muestra en la siguiente captura de pantalla. No se olvide de
comprobar los campos opción Crear grupos de captura para:
La etapa de evaluación expresiones regulares puede ser utilizado sólo para evaluar si es o no un campo coincide con
una expresión regular, o para generar nuevos campos, como en este caso. Por grupos de captura, hemos sido capaces
de crear un nuevo campo para cada grupo capturado desde el campo original. También se dará cuenta de un campo
denominado resultado, que en nuestro ejemplo tiene una Y como su valor. Esta Y significa que el campo original se correspondía
Tenga en cuenta que mientras que el paso de Split Los campos que elimina el campo original del conjunto de datos, la etapa de evaluación RegEx
no lo hace.
Estos no son los únicos pasos que permitirán que este tipo de operación.
Siéntase libre de navegar por la lista de pasos, principalmente los de la carpeta Transformación y probar sus propias soluciones.
Más formas de crear nuevos campos
Además acaba de extraer datos de los campos de entrada, también podemos combinar los campos mediante la
realización de operaciones aritméticas entre ellos, la concatenación de campos de cuerdas, y el uso de otros
métodos. Al igual que hicimos en el apartado anterior, vamos a ampliar en un ejemplo sencillo que le servirá como
modelo para la creación de su propio proceso.
Para este tutorial, vamos a seguir utilizando los datos del archivo que contiene aproximadamente el costo de vida.
Esta vez, queremos generar un nuevo campo que crea un nuevo índice de la media del índice de precios al
restaurante y el índice de comestibles. Para ello, vamos a ir a través de los siguientes pasos:
1. Crear una nueva transformación y el uso de un paso de entrada de archivo de texto para leer el cost_of_living_europe.txt
expediente.
Como alternativa, puede abrir la transformación que hemos creado anteriormente y guardarlo con un nuevo nombre.
Como se puede deducir de la ventana de configuración, con el paso de la calculadora, podemos crear nuevos campos
mediante el uso de campos temporales en el camino. En el último conjunto de datos, podemos ver cada field- temporal dos y temperatura,
Si no necesita esos campos temporales en el último conjunto de datos, busque la columna Eliminar en la ventana de
configuración y cambiar su valor a Y.
El paso de la calculadora es un paso práctico que puede ser utilizado para la realización de muchos tipos comunes de
las operaciones, tales como operaciones aritméticas (suma, resta, y así sucesivamente), las operaciones con el texto (la
concatenación, la conversión a mayúsculas, y así sucesivamente), las operaciones con fechas (extraer partes de una
Por supuesto, hay una manera más simple para hacer el cálculo de la última transformación. Vamos
a intentarlo:
3. Arrastre y suelte un paso Expresión de Java definida por el usuario desde la carpeta de secuencias de
comandos. Crear un salto desde el paso de entrada de archivo de texto hacia este nuevo paso.
4. Haga doble clic en el paso y configurarlo como se muestra en la siguiente captura de pantalla:
Configuración de un paso Expresión de Java
5. Cierre la ventana y ejecutar una vista previa. Debería ver exactamente el mismo resultado que antes.
El paso Expresión Java es un paso de gran alcance que le permite crear campos de cualquier tipo -no sólo los
números-mediante el uso de una amplia variedad de expresiones, siempre y cuando se pueden expresar en una sola
línea usando la sintaxis de Java. En el último ejemplo, mediante el paso de Expresión de Java era más simple que
hacer lo mismo con un paso de la calculadora. Dependiendo del caso, puede ser más conveniente utilizar uno u otro.
Esto fue sólo un ejemplo que muestra cómo agregar nuevos campos a partir de los campos en el conjunto de
datos. Hay muchas medidas disponibles, y con diferentes propósitos. Los encontrará principalmente en la
carpeta Transform, pero hay algunos otros en diferentes carpetas en la pestaña Diseño. No importa qué paso
que elija, el modo de usar es siempre la misma. Se agrega el paso al final de la corriente y luego configurar
correctamente de acuerdo a sus necesidades.
Clasificación y agregación de datos
En la sección anterior, hemos aprendido cómo trabajar con campos individuales, por ejemplo, mediante la creación de
otros nuevos o modificar los existentes. Las operaciones se aplicaron fila por fila. En esta sección, no vamos a mirar en
filas individuales, pero en su lugar nuestro aprender a observar y trabajar en el conjunto de datos como una unidad.