Sie sind auf Seite 1von 83

POWERCENTER - INFORMATICA

Introduccin

Tecnologa Business Intelligence

Marzo 2009
confidencialidad
Aviso: Este documento es material confidencial y propiedad de everis. Se prohbe
el uso, reproduccin o la divulgacin del contenido de este material sin permiso
previo y por escrito de la empresa propietaria.

Derechos de Autor
2007, everis. All rights reserved

2
objetivos del curso

Conocer qu es PowerCenter
Identificar los componentes bsicos de PowerCenter
Suministrar los conceptos bsicos de desarrollo en PowerCenter

3
ndice
1. Introduccin
2. Conceptos Bsicos
3. Arquitectura PowerCenter
4. Transformaciones Bsicas
5. Laboratorio

4
ndice
1. Introduccin
2. Conceptos Bsicos
3. Arquitectura PowerCenter
4. Transformaciones Bsicas
5. Laboratorio

5
Introduccin

Dentro de cada empresa, bien sea grande o pequea, se maneja una gran cantidad de
datos, que se almacenan en muchos formatos diferentes, desde bases de datos hasta
ficheros sin una estructura definida.

Estos datos deben ser combinados, analizados, comparados pero normalmente los
sistemas de almacenamiento no hablan entre si debido a mltiples causas.

6
Introduccin

DATA INTEGRATION

Las tecnologas de Data Integration


son aquellas que permiten que
orgenes de diferentes formatos
puedan comunicarse entre si,
usando una nica conexin.

PowerCenter proporciona herramientas de data


integration, permitiendo realizar tareas de
datawarehousing con agilidad y flexibilidad.

7
Introduccin
DATA INTEGRATION - ETL

La metodologa aplicada para llevar a cabo el proceso de Data Integration es ETL.

Extract Transform Load

Agregacin
Limpieza
Consolidacin
Aplicacin de reglas de Negocio

Correspondencia PowerCenter

Source Definition Transformation Target Definition


8
ndice
1. Introduccin
2. Conceptos Bsicos
1.1 Mapping - Session
1.2 Transformations
1.3 Task
1.4 Workflow
1.5 Metadatos
1.6 Tipos de datos
1.6 ANALOGA. Data Integration ETL
3. Arquitectura PowerCenter
4. Transformaciones Bsicas
5. Laboratorio

9
Conceptos Bsicos

PowerCenter se divide en varios programas diferenciadas segn su funcin dentro del flujo de
la construccin de un proceso.

Repository Manager: Se encarga de la administracin de los elementos desarrollados, permite


la creacion de carpetas y del movimiento de elementos entre ellas.

Designer: Programa en el se definirn las estructuras de datos que se utilizarn como fuentes
y destinos de informacin. Es tambin en este programa en el que se construyen los
mappings.

Workflow Manager: Programa encargado de la definicin y configuracin de los workflows y las


tasks que lo componen.

Workflow Monitor: Permitir monitorizar la ejecucin de los workflows. Tambin permite


observar los logs de ejecucin y observar estadsticas de la ejecucin.

Cada uno de estos programas permite la definicin o inclusin de los diferentes elementos en un
proceso.

10
Conceptos Bsicos

Los estructura general de un proceso de transformacin de datos construido en PowerCenter


se representan a continuacin:

PowerCenter

Workflow

Inicio

Session
Mapping
Tranformation

Tranformation

Session
Mapping
Tranformation

Tranformation

11
PowerCenter

Workflow

Conceptos Bsicos
Inicio

Session

Mapping

Session

Mapping
Mapping - Session

Definen lgicamente el proceso ETL

Mapping: Conjunto de transformaciones, secuenciales o paralelas, que mueven datos desde


uno o ms orgenes hasta uno o ms destinos.

Session: Implementa la ejecucin de un mapping.

12
Conceptos Bsicos Mapping - Session

PowerCenter permite trabajar sin conocer el sistema de almacenamiento utilizado para las
fuentes o para los destinos de informacin:

Los elementos incluidos en un mapping nicamente trabajan con la estructura de datos


definida, sin importar cual sea su conexin o estructura de almacenamiento fsico.

Una session es la implementacin especifica de un mapping. Por tanto, puede darse el caso
en que dos sessions diferentes pueden utilizar el mismo mapping, pero una puede estar
extrayendo informacin de una tabla de Teradata a un fichero y la otra puede estar cargando
una tabla ejecutando un sqlloader de Oracle.

Source Target
Mapping Transformaciones

Fichero
Session Tabla Transformaciones
yyyyyyyyy
xxxxxxx

13
PowerCenter

Workflow

Conceptos Bsicos
Inicio

Session

Mapping

Session

Mapping
Transformations

Genera, modifica o dirige datos dentro de un mapping

Las transformaciones reciben y envan datos a travs de los puertos, que son los elementos que
conectan los diferentes objetos dentro de un mapping.

Las transformaciones de PowerCenter se pueden


clasificar segn su influencia sobre el volumen de
datos:
Pasivas. Realiza operaciones a nivel de registro.
El nmero de registros que recibe es el mismo
nmero de registros que entrega.

Activas. El nmero de registros a la salida de la


transformacin puede variar respecto a la entrada.

Una transformacin activa no necesariamente


cambia el nmero de registros, por ejemplo la
transformacin sorter (ordenacin), es Activa.

14
PowerCenter

Workflow

Conceptos Bsicos
Inicio

Session

Mapping

Session

Mapping
Transformations

Los puertos pueden ser de entrada, salida o entrada/salida o tambin pueden ser estticos o
variables. En el caso de ser variable la asignacin del valor se realizar de manera secuencial, por
lo que es importante la posicin del puerto dentro de la transformacin.

PowerCenter cuenta con un lenguaje de


programacin propio muy intuitivo, de manera que
se pueden hacer operaciones entre la informacin
de los diferentes puertos de entrada.

Esta programacin interna tiene grandes


limitaciones al no contar con bucles, por lo que la
utilizacin suele restringirse al uso de sentencias if
anidadas y al tratamiento de cadenas o fechas.

15
PowerCenter

Conceptos Bsicos
Workflow

Inicio

Session

Mapping

Session
Workflow
Mapping

Coleccin de sesiones y/o tareas ordenadas

Un workflow es la unidad mnima de ejecucin de PowerCenter. Se define como un conjunto de


acciones ordenadas y relacionadas entre si.

Las tareas y sesiones estarn relacionadas siguiendo un flujo de dependencias que


puede ser en paralelo o en serie, o una combinacin de ambos segn el punto de
ejecucin.

El inicio de una tarea o sesin puede estar condicionado por el estado de finalizacin
de otra(s).

Un workflow siempre iniciar con la tarea Start.

16
PowerCenter

Workflow

Conceptos Bsicos
Inicio

Session

Mapping

Session

Mapping
Tasks

Conjunto ejecutable de funciones, acciones o comandos

Los elementos ejecutables de PowerCenter son incluidos en los workflows, por tanto las diferentes task
utilizadas estarn siempre contenidas en un workflow, no pudiendo ser ejecutadas por libre.

Las principales task son:

Session task. Ejecuta un mapping, indicando las caractersticas fsicas que se le aplicarn.

Command task. Ejecuta un shell script del sistema operativo sobre el que se ejecuta..

Email task. Enva un correo electrnico.

Decision task. Divide el flujo de ejecucin del workflow evaluando condiciones.

Timer task. Mantiene la ejecucin a la espera el intervalo indicado.

17
Conceptos Bsicos
Metadatos
Datos sobre los datos

Aportan informacin adicional en cada uno de los elementos como pueden ser de dnde vienen
los datos, cuando fueron extrados, como fueron procesados, por quin,

Tipos de Metadatos:
Proceso / operacionales: tiempos de proceso, nmero de errores, registros procesados,
Tcnicos: definiciones de datos, reglas de negocio, parmetros, inventario de sistemas,
Negocio / Funcionales: mapeos de datos, definiciones de negocio, diccionario,

Ejemplos de metadatos en Power Center:


Definicin de Orgenes y Destinos (Source, Target).
Informacin de Mappings
Informacin de Workflows

Los metadatos se almacenan en el repositorio interno de PowerCenter.

18
Conceptos Bsicos
Tipos de Datos
PowerCenter utiliza sus propios tipos de datos

PowerCenter identifica los tipos de datos que manejan


las fuentes y los destinos de los datos, estos tipos de
datos son llamados Nativos.

Al definirse un objeto source dentro de PowerCenter,


ste convierte los datos fuente al formato estndar
utilizado internamente por PowerCenter. Estos son
llamados tipos de datos Integration o Transformation.

Finalmente, al definir el objeto target se PowerCenter


convierte los datos en formato integration a formato
nativo.

19
Conceptos Bsicos
Tipos de Datos
PowerCenter utiliza sus propios tipos de datos

Algunas conversiones son soportadas directamente por PowerCenter:

Tipos de datos numricos otros tipos de datos numricos.


Tipos de datos numricos string
Fecha/Hora Date o String

Aunque los tipos de datos utilizados internamente por PowerCenter


son estndar, es importante tener en cuenta que si una conversin de
tipo de datos es identificada durante la construccin del mapping, sta
se realice de manera explicita en una transformacin de tipo expresin.
Esto evitar posibles problemas con la precisin y la longitud a la hora
de hacer el tratamiento de datos.

20
Conceptos Bsicos
ANALOGA. Lnea de Ensamblaje

Lnea
Lnea dede Ensamblaje
ensamblaje PowerCenter
POWERCENTER

Diseo del producto Target Data Model

Instrucciones de alto nivel Mapping

Instrucciones detalladas Transformations

Lnea operacional de ensamblaje Workflow

Pasos operacionales Task

Documentacin de procesos Metadata

21
ndice
1. Introduccin
2. Conceptos Bsicos
3. Arquitectura PowerCenter
1.1 Sources & Targets
1.2 Services & Repository
1.3 Client Applications
4. Transformaciones Bsicas
5. Laboratorio

22
Arquitectura PowerCenter

Dominio

Integration
Targets
Service
Sources

Repository
Service
Administration
Repository
Console
Service Process

Centro de Administracin

Almacenamiento de la
Aplicaciones PowerCenter Repository informacin interna de
PowerCenter

23
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Sources & Targets


Administration Console

Repository

Orgenes y destinos de los datos


PowerCenter soporta orgenes y destinos heterogneos

Tablas relacionales. Oracle, Sybase, Informix, IBM DB2, Microsoft SQL Server, Teradata

Ficheros planos. Ficheros de tamao fijo y delimitados, ficheros COBOL y XML.

Business Sources: SAP R/3, SAP BW, Siebel, PeopleSoft y IBM MQSeries.

Otros. Microsoft Excel y Microsoft Access (si el sistema operativo admite estos formatos)

24
Integration Service

Targets

Sources

Arquitectura de PowerCenter
Repository Service

Repository Service Process

Administration Console

Services & Repository


Repository

Corazn del proceso ETL

Integration Service. Motor que realiza todo el proceso lgico de ETL

Repository Service. Gestiona la conexin al repositorio de PowerCenter, el cual contiene las definiciones de
mappings y workflows.

Repository Service Process: Proceso multithread que recupera, inserta y actualiza la informacin del repositorio
PowerCenter.

Repository : Contiene todos los metadatos de PowerCenter. Aqu se encuentran todas las definiciones de los
desarrollos realizados as como la dependencia de los diferentes elementos o las versiones realizadas. Las
tablas que contienen los metadatos del sistema residen dentro de la base de datos del Repositorio.

La lectura de los metadatos se realiza durante la ejecucin de una sesin.

25
Integration Service

Targets

Sources

Arquitectura de PowerCenter
Repository Service

Repository Service Process

Administration Console

Client Applications
Repository

Herramientas cliente utilizadas para poblar el repositorio de metadatos, ejecutar los flujos de trabajo,
hacer seguimiento de workflows y gestionar el repositorio.

Repository Manager. Gestiona todo lo referente al interaccin con el repositorio.


Conexiones, carpetas, objetos y usuarios.
Administration console. En ella pueden ejecutarse tareas de administracin como crear y
configurar servicios especficos del repositorio, start/stop, backup/restore, gestin de
usuarios y grupos.
Designer . Proporciona las herramientas necesarias para la creacin de mappings.
Workflow Manager. Permite la creacin, planificacin y ejecucin de workflows.
Workflow Monitor. Monitoriza y controla workflows.

Todas las herramientas acceden el repositorio a travs de Repository Service.


Workflow Manager y Workflow Monitor utilizan tambin Integration Service.

26
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Repository Manager
Repository

Administra repositorios.
Permite navegar por el repositorio y llevar a cabo las siguiente tareas:

Gestin de usuarios y grupos. Proporciona y elimina permisos sobre carpetas y objetos


globales.

Administra carpetas. Todos los objetos construidos a travs de Designer y Workflow


Manager se almacenan en carpetas, esta herramienta permite crear, editar, copiar, y
eliminar dichas carpetas.

Visor de metadatos. Permite ver las propiedades de los objetos del repositorio y realizar
bsquedas a travs de palabras claves.

27
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Repository Manager - Aspecto


Repository

Navigator. Muestra los objetos que han


sido creados a travs de Repository
Manager, Designer y Workflow Manager. La
informacin se muestra organizada por
repositorio y carpeta.

Main. Informa a cerca de las propiedades


del objeto seleccionado en el Navigator.

Output. Informa el resultado de las tareas


realizadas en Repository Manager.

28
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Repository Manager
Repository

Repository Manager permite ver los objetos del repositorio que se han creado a travs de Designer y
Workflow Manager.

Source definitions. Definicin de objetos de bases de datos o ficheros, que proveen la informacin de entrada.

Target definitions. Definicin de objetos de bases de datos o ficheros que almacenarn los datos.

Mappings. Conjunto de objetos que contienen la lgica de negocio. Estas sern las instrucciones que aplicar
Integration Service para transformar los datos.
Reusable transformations. Transformaciones creadas para ser utilizadas en diferentes mappings.

Mapplets. Conjuntos de transformaciones creados para ser utilizados en diferentes mappings.

Sessions: Conjunto de Sessions reutilizables que podrn ser incluidas en diferentes workflows.

Workflows. Piezas ejecutables que mediante la Integration Service realiza el tratamiento fsico de los datos.

29
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Designer
Repository

Designer proporciona las herramientas para el diseo y construccin de las estructuras que extraern,
transformarn y cargarn los datos

Source Analyzer. Importa o crea sources.

Target Designer. Importa o crea targets.

Transformation Developer. Permite construir transformaciones y funciones personalizadas,


que luego podrn usarse en mappings y expressions respectivamente.

Mapplet Designer. Permite crear mapplets, que ms tarde sern usados como piezas
dentro de los mappings.

Mapping Designer. A travs de esta herramienta se construyen mappings.

30
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Designer - Aspecto
Repository

Navigator. Esta seccin permite conectarse


a los repositorios, navegar por el proyecto y
explorar sus carpetas.

Workspace. rea de trabajo, en ella se


visualizan, crean y editan objetos del
repositorio, sources, targets, mapplets,
transformations y mappings.

Output. Informa el resultado de las tareas


realizadas, por ejemplo: saving your work,
validating a mapping, etc.

31
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Designer Source Analyzer


Repository

Source Analyzer:

En esta aplicacin es en la que se definirn


las estructuras de las fuentes de datos que se
utilizarn posteriormente
.
Las estructuras pueden ser importadas con
diversos asistentes, en el caso de existir un
ODBC de conexin o ser ficheros con formato
COBOL, XML o texto delimitado por
caracteres o posiciones fijas.
Tambin es posible definir una estructura de
datos desde cero directamente en esta
aplicacin.

32
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Designer Target Designer


Repository

Target Designer:

Es la versin equivalente a Source Analyzer


pero para la definicin de targets.
Aqu se definirn las estructuras de datos que
se utilizarn para almacenar los datos una vez
finalizado el tratamiento definido en las
transformaciones.

Una estructura de datos puede ser fuente en


un mapping y destino en otro, en este caso la
estructura debe ser dada de alta tanto en
Source Analyzer como en Target Designer.

33
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Designer Transformation developer


Repository

Transformation Developer:

Es habitual que diversos datos se les aplique


el mismo tratamiento, para comprobar la
existencia de un valor o para comprobar el
formato en cadenas de caracteres.
En estos casos, se definir una
transformacin que se utilizar en varios
puntos del proceso de ETL.
PowerCenter proporciona esta funcionalidad
mediante Tranformation Developer, de manera
que, las transformaciones se definen una vez
y pueden ser utilizadas en mltiples
mappings.

34
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Designer Mapplet Designer


Repository

Mapplet Designer:
Otras veces lo que es necesario es invocar un
proceso completo con varias transformaciones
que realiza un tratamiento especifico dentro del
flujo de carga.
Definimos como un mapplet a un conjunto de
transformaciones que dadas unas entradas
realiza un tratamiento especifico a los datos
recibidos y genera unas salidas. El nmero de
puertos de entrada es siempre el mismo y del
mismo tipo de datos, independientemente de la
estructura de datos que se este tratando. Igual
ocurre con los puertos de salida, el mapplet
siempre devolver la misma cantidad de
puertos y del mismo tipo de datos.
Un mapplet se tratar como una expresin mas
dentro del mapping en el que se incluya.

35
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Designer Mapping Designer


Repository

Mapping Designer:

Finalmente tenemos la aplicacin que nos


permite interrelacionar los otros elementos
con las diferentes transformaciones que
proporciona PowerCenter.
Aqu definiremos cual es el flujo de aplicacin
de las transformaciones. Un mapping puede
contener flujos de tratamientos de datos
totalmente separados e independientes.

Un mapping no se considerar valido si no


contienen al menos un origen y un destino.

36
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

Designer Mapping Designer


Repository

Mapping Designer:

La complejidad de los mappings pueden ir


desde el mapping mas simple que carga un
source en un target, hasta mappings que
utilizan gran cantidad de fuentes y destino,
cruces de informacin que se va incluyendo
en diferentes puntos del proceso y los puertos
contienen lgica de procesado propia.

37
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

WorkFlow Manager
Repository

Workflow Manager permite definir el conjunto de instrucciones necesarias para ejecutar tareas como
sesiones, envo de correos electrnicos, etc.

Workflow Manager proporciona las siguientes herramientas:

Task Developer. Permite crear tareas.

Worklet Designer. Permite crear worklets.

Workflow Designer. Proporciona las herramientas para la creacin de workflows y tareas.

38
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

WorkFlow Manager - Aspecto


Repository

39
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

WorkFlow Manager Task Developer


Repository

Task Developer

Dentro de Task Developer podremos


definir y configurar task que podrn
ser utilizadas en diferentes
workflows. Estableceremos los
valores especificos de la ejecucin
una nica vez.. Por ejemplo
definiremos las task para auditar la
finalizacin del proceso de
ejecucin.

40
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

WorkFlow Manager
Repository

Worklet Designer.
Permite crear worklets. Un worklet
es un conjunto de task que puede
ser incluido en un workflow. Las task
se ejecutarn segn las
dependencias y con la configuracin
especificada establecidas en el
diseo del worklet.
Dentro del workflow, el worklet se
comportar como una caja negra
que al ejecutarse produce un
resultado.

41
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

WorkFlow Manager
Repository

Workflow Designer.

Proporciona las herramientas para


la creacin de task y establecer las
dependencias entre las mismas para
conformar un flujo de ejecucin
segn lo diseado.
nicamente es en esta aplicacin
donde se podrn construir
elementos ejecutables.
Permite adems configurar
elementos adicionales como la ruta
de los log o si se utiliza un fichero
de parmetros para proporcionar
informacin adicional al proceso de
transformacin de datos.

42
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

WorkFlow Monitor
Repository

Workflow Monitor recibe contnuamente informacin de Integration Service y Repository Service.

Monitorizar la ejecucin de workflows y tareas. Solamente se mostrarn los workflows que han
sido ejecutados por lo menos una vez.

Visualiza detalles relacionados con workflows y tareas a travs de Gantt Chart view o Task
view.

Ejecutar, detener o abortar workflows.

Consulta los eventos de log.

43
Integration Service

Targets

Arquitectura de PowerCenter
Sources

Repository Service

Repository Service Process

Administration Console

WorkFlow Monitor - Aspecto


Repository

Navigator window. Muestra la situacin de los


repositorios, servidores y objetos.
Output window. Muestra los mensajes recibidos
de Integration Service y Repository Service.
Time window. Informa el progreso de la
ejecucin de un workflow.
Gantt Chart view. Visualiza los detalles de la
ejecucin de un workflow en formato cronolgico.
Task view. Visualiza los detalles de la ejecucin
de un workflow en formato report.

44
ndice
1. Introduccin
2. Conceptos Bsicos
3. Arquitectura PowerCenter
4. Transformaciones Bsicas
1.1 Recomendaciones Generales
1.2 Source Qualifier
1.3 Expression
1.4 Filter
1.5 Sorter
1.6 Aggregator
1.7 Joiner
1.8 Lookup
1.9 Router
1.10 Update Strategy
5. Laboratorio

45
Transformaciones
Para cada una de las transformaciones podremos conocer la siguiente informacin bsica:

Tipo de transformacin.
Activa
Pasiva
Conectada. Indica que la transformacin requiere de conectores para su
funcionamiento, es decir debe estar integrada en el flujo de datos.
Desconectada. Indica que la transformacin NO requiere de conectores para su
funcionamiento.

Cach. Indica si la transformacin utiliza memoria cach.


Utiliza memoria cach
No utiliza memoria cach

Propiedades Generales.

Best Practices.

46
Transformaciones
Recomendaciones Generales
LOG DE TRANSFORMACIONES

El nivel de traza de las transformaciones dentro del log de la sesin viene determinado por la
propiedad Tracing Level de la transformacin. Las transformaciones no tienen ficheros logs
independientes sino que su informacin va incluida en el log de la sesin.
Los valores enumerados de menor a mayor detalle de log, son:

Cuanto mayor sea el nivel de detalle del log, mayor ser el tiempo de ejecucin debido a los
constantes accesos a disco. Se recomienda establecer el nivel de log a Normal, incluso para
aquellos procesos que producen un nmero considerable de registros rechazados, de esta forma
solamente sern guardados en el fichero de rechazados (.bad) y no estarn reflejados en el log.

47
Transformaciones
Recomendaciones Generales
CACH

Para transformaciones que utilicen memoria cach, dispondremos de propiedades especficas que
debemos configurar. A partir de PowerCenter 8 es posible configurar las caches como Auto estas se
caculan automticamente en tiempo ejecucin.

METADATA EXTENSIONS

Los metadatos almacenados en el Repositorio


Aadir Metadata
pueden ser ampliados asociando informacin a Extensin al objeto
cada objeto del Repositorio de forma individual.
Estas extensiones o ampliaciones de los metadatos
pueden crearse en Sources, Targets,
Transformaciones y Mappings.

Informacin asociada al objeto, en


En el ejemplo de la figura, las extensiones se han este caso a una fuente
utilizado para dar informacin acerca de un fichero
plano: creador de la fuente, fecha los datos, nombre
del Operacional, email de contacto y telfono.

48
Transformaciones
Source Qualifier
DEFINICIN

Extrae datos de ficheros planos y fuentes relacionales.


Cada Source Qualifier representa el conjunto de registros que PowerCenter extrae de la fuente
asociada al mismo.
Todos los puertos son input/output.
Convierte a tipos de datos propios de PowerCenter.
Si la fuente a la que est conectada es relacional, es posible realizar la siguientes tareas:

Cruzar dos o ms fuentes de datos, siempre que estn en la misma base de datos.
Filtrar registros durante la extraccin de datos mediante una condicin sql
Modificar el tipo de cruce (outer join, inner join).
Extraer los datos ordenados por uno o ms puertos.
Extraer los valores distintos de la fuentes. Inclusin de select distinct en la consulta sql.
Modificar la query generada por PowerCenter.

Si la fuente de datos es un fichero plano, entonces la lectura de registros es del fichero completo.

49
Transformaciones
Source Qualifier
PARAMETRIZACIN BEST PRACTICES

Tracing Level. Filtrar todo lo posible los datos a tratar mediante


las propiedades de la transformacin.
SQL Query*. Si es modificada el resto de propiedades
que modificaran la consulta sern ignorados.
User-Defined Join*. Conectar solamente los puertos que sean
Source Filter*. Ser aadido a la clusula where. necesarios del Source Qualifier a las siguientes
transformaciones, stos sern los campos
Number of Sorted Ports*. Ser aadido a la clusula
includos en la Select.
order by.
Select Distinct*.
Pre-SQL*. Sentencia SQL que ser ejecutada antes No es aconsejable cambiar la consulta de la
del comienzo de la lectura de registros de la base de propiedad SQL Query, siempre que se pueda
datos. realizar la consulta mediante el resto de
propiedades de la transformacin.
Post-SQL*. Sentencia SQL que ser ejecutada
despus de finalizar la carga de los registros en todos
los destinos. No quitar puertos del Source Qualifier, aunque no
sean utilizados, de esta forma facilitaremos la
* Slo para fuentes asociadas a tablas relacionales realizacin de futuros cambios.

50
Transformaciones
Expression
DEFINICIN

Realiza clculos a nivel de registro. Algunas de las


operaciones que puede ejecutar son:
Manipulacin de caracteres (truncate, concatenate)
Conversin de tipos de datos (to char, to date)
Clculos numricos

No puede realizar agregaciones a mltiples registros.

Permite la definicin de puertos de tipo variable. Este tipo de


puertos son equivalentes a declaraciones de variables locales a
la transformacin.

Las expresiones pueden crearse en los puertos de tipo Output


y Variable mediante el editor de expresiones.

51
Transformaciones
Expression

CONFIGURACIN

Tracing Level. Nivel de detalle que aparecer en el log en las ejecuciones de la transformacin.

BEST PRACTICES

No conectar ms puertos de los necesarios para realizar las expresiones en la transformacin, el resto de
puertos pueden conectarse directamente a la siguiente transformacin.

La transformacin Expression permite realizar mltiples expresiones sobre diferentes conjuntos de puertos,
por lo que es conveniente utilizar una nica transformacin en lugar de una para cada expresin.

Utilizar los puertos de tipo variable para evitar evaluar varias veces la misma expresin en diferentes
puertos, simplificar expresiones complejas y guardar valores de registros para que pueden ser referenciados
por registros posteriores.

52
Transformaciones
Filter
DEFINICIN

Filtrado condicional de datos utilizando una o ms condiciones, la transformacin descarta aquellos registros
que no la(s) cumplen.
Los puertos que llegan al filtro deben venir todos de una nica transformacin.
Es posible utilizar valores constantes como condicin de filtrado.

PARAMETRIZACIN

Tracing Level.

Filter Condition. Es una expresin que devuelve los


valores TRUE o FALSE. Cualquier expresin que
devuelva un nico valor puede ser usada como filtro.

53
Transformaciones
Filter
BEST PRACTICES

Filtrar los datos lo antes posible para manejar solamente los registros necesarios, de esta forma
reduciremos el tiempo de procesamiento y el volumen testado.

Realizar el filtrado en la transformacin Source Qualifier para aquellas fuentes que sean relacionales, el
filtrado se realizar en el gestor mediante la query.

Utilizar la propiedad Filter Condition con expresiones sencillas. Para calcular expresiones complejas,
utilizar la transformacin Expression, definiendo un puerto de salida de tipo boolean, a modo de flag, este
campo ser el evaluado en la transformacin Filter.

Para mltiples filtrados, utilizar la transformacin Router en lugar de Filter, ya que de esta manera
podremos crear diferentes filtros, uno por cada grupo creado, leyendo solamente una vez el flujo de datos
completo.

54
Transformaciones
Sorter

DEFINICIN BEST PRACTICES

Ordena los datos, de forma ascendente o Utiliza un Sorter, es ms eficiente que agregar
descendente, en funcin de un clave de un ORDER BY en el Source Qualifier.
ordenacin, compuesta por uno o ms puertos.
Usar una transformacin aggregator antes del
La transformacin Sorter solamente contiene sorter aumenta la eficiencia del proceso.
puertos de tipo input/output.
Configurar suficiente memoria en la propiedad
Cuando se establecen mltiples puertos como Sorter Cach Size para evitar que los datos
clave de ordenacin, sta se realiza de forma sean volcados a disco, de no ser posible,
secuencial por cada puerto. verificar que el directorio temporal tiene
suficiente tamao para albergar los ficheros
El orden en el que aparezcan en la pestaa de temporales generados durante la ordenacin.
Puertos determinar la sucesin de ordenacin.

55
Transformaciones
Sorter

PARAMETRIZACIN

Sorter Cach Size. Configura la mxima cantidad de memoria que puede ser utilizada para realizar la
ordenacin. Este dato puede ser configurado como Auto o puede calcularse el valor numrico mediante
la siguiente frmula:
Nmero de registros de entrada * [( Tamao Columna) + 16]

Case Sensitive. Indica si en la clave de ordenacin se diferenciar entre maysculas y minsculas,


considerndose las maysculas superiores.

Work Directory. Directorio dnde se crearn los ficheros temporales durante la ordenacin. Al finalizar la
ordenacin, los ficheros temporales son borrados.

Distinct. Descarta los registros duplicados en la ordenacin. Al habilitar esta opcin todos los puertos
pasan a formar parte de la clave de ordenacin.

56
Transformaciones
Sorter

PARAMETRIZACIN

Tracing Level. Nivel de detalle que aparecer en el log en las ejecuciones de la transformacin.

Null Treated Low. Los valores nulos son tratados en las ordenaciones con un valor superior al resto.
Activar esta opcin permite que los valores nulos sean tratados con valores inferiores al resto.

Transformation Scope. Especifica como aplicar la lgica a los datos de entrada.


Transaction. Aplica la lgica de la transformacin a todos los registros de una transaccin.
All Input. La lgica es aplicada a todos los datos de entrada.

57
Transformaciones
Aggregator

DEFINICIN

Clculos agregados sobre grupos de
registros.
Permite el uso de expresiones
condicionales en las funciones de
agregacin para limitar el nmero de
registros a utilizar en cada caso.

58
Transformaciones
Aggregator
PARAMETRIZACIN

Cach Directory. Directorio local donde el servicio de integracin crea las cachs de ndice y de datos.
Tracing Level. Nivel de detalle que aparecer en el log en las ejecuciones de la transformacin.
Sorted Input. Indica que los datos han sido ordenados previamente (en un Sorter o Source Qualifier)
por los puertos de agrupacin, y en el mismo orden.
Aggregator Data Cach Size. Tamao de la cach de datos de la transformacin. Por defecto el
tamao es de 2Mb. La cach puede establecerse Auto o configurar un valor numrico, ya sea
manualmente o mediante la calculadora de cach.
Frmula: Num de grupos * ( ( tamao columnas ) + 7 )

59
Transformaciones
Aggregator

PARAMETRIZACIN

Aggregator Index Cach Size. Tamao de la cach de ndice de la transformacin. Por defecto el
tamao es de 1Mb. La cach puede establecerse Auto para que el servicio de integracin determine el
tamao o configurar un valor numrico, ya sea manualmente o mediante la calculadora de cach.
Frmula: Num de grupos * ( ( tamao columnas ) + 17 )

Transformation Scope. Especifica como aplicar la lgica a los datos de entrada


Transaction. Aplica la lgica de la transformacin a todos los registros de una transaccin.
All Input. La lgica es aplicada a todos los datos de entrada.

60
Transformaciones
Aggregator
BEST PRACTICES

Ordenar previamente los datos para optimizar el rendimiento de la transformacin Aggregator mediante la
activacin de la propiedad Sorted Input.

Filtrar los datos lo antes posible para procesar un menor volumen de registros.

Descartar los puertos que no van a ser utilizados en la transformacin. Para disminuir el tamao de la
cach, reducir el nmero de puertos de tipo input/output y output.

Para calcular expresiones complejas, utilizar la transformacin Expression.

Utilizar puertos de tipo variable para optimizar expresiones que se evalen varias veces para el mismo
registro.

61
Transformaciones
Aggregator

BEST PRACTICES

Configurar suficiente memoria en las propiedades de cachs para evitar que los datos sean volcados a disco,
de no ser posible, verificar que el directorio temporal tiene suficiente tamao para albergar los ficheros
temporales generados para la agregacin.

Utilizacin de la Agregacin Incremental siempre que sea posible. De esta forma no se est calculando el valor
del agregado cada vez que se ejecuta la sesin, si no que se generarn ficheros de cach donde se guardarn
los clculos de la ltima ejecucin, y en la siguiente ejecucin acceder a esta cach sin necesidad de
recalcular nada. El rendimiento se incrementa sustancialmente. Esta propiedad se configura en la sesin.

62
Transformaciones
Joiner
DEFINICIN

Cruce de flujos de datos heterogneos; hace posible cruzar dos flujos de datos de cualquier tipo.
Permite cruzar nicamente dos flujos de datos. Uno es llamado Master y el otro Detail.
El cruce se realiza estableciendo uno o ms campos comunes para el master y el detail.
Tipos de cruce:

Master Detail Master Detail Maste Detail Master Detail


r

Normal (inner) Join Master Outer Join Detail Outer Join Full Outer Join

La transformacin Joiner procesa primero los registros Master almacenndolos en la cach, posteriormente
procesa cada registro Detail comparndolo con el Master de la cach.
No puede utilizarse una transformacin Joiner si el flujo de datos de entrada proviene de una transformacin
de tipo Update Strategy, ni conectar una transformacin Secuence Generator directamente a un Joiner.

63
Transformaciones
Joiner
PARAMETRIZACIN

Case Sensitive String Comparasion. Activar la opcin para que en la comparacin de cruce se
diferencie entre minsculas y maysculas en los campos de tipo String.

Cach Directory. Directorio dnde se crearn los ficheros de cach de datos e ndice durante la
realizacin del cruce.

Join Type. Especifica el tipo de cruce: Normal, Master Outer, Detail Outer o Full Outer.

Tracing Level. Nivel de detalle que aparecer en el log en las ejecuciones de la transformacin.

Joiner Data Cach Size. Tamao de la cach de datos de la transformacin. Por defecto el tamao es
de 2Mb. La cach puede establecerse Auto o configurar un valor numrico, ya sea manualmente o
mediante la calculadora de cach.
Frmula: Num de registros Master * ( ( tamao columnas ) + 16 )

64
Transformaciones
Joiner

PARAMETRIZACIN

Joiner Index Cach Size. Tamao de la cach de ndice de la transformacin. Por defecto el tamao es
de 1Mb. La cach puede establecerse Auto o configurar un valor numrico, ya sea manualmente o
mediante la calculadora de cach.
Frmula: Num de registros Master * ( ( tamao columnas ) + 8 )

Sorted Input. Especifica que los datos estn ordenados. Activar esta opcin si los datos estn
ordenados por la clave de cruce y en el mismo orden de aparicin, de esta forma aumentaremos la
eficiencia del Joiner.

Transformation Scope. Especifica como aplicar la lgica a los datos de entrada:


Transaction. Aplica la lgica de la transformacin a todos los registros de una transaccin.
All Input. La lgica es aplicada a todos los datos de entrada.

65
Transformaciones
Joiner

BEST PRACTICES

Activar la propiedad Sorted Input siempre que sea posible, de esta forma la transformacin ser ms
eficiente.
Sorted Input activo. Establecer como Master el flujo de datos con menor nmero de valores
duplicados para la clave de cruce.
Sorted Input inactivo. Establecer como Master el flujo de datos con menor nmero de registros.

Para cruzar fuentes relacionales que estn en las misma base de datos, utilizar la transformacin
Source Qualifier que realizar el cruce en la base datos.

Para cruces sucesivos mediante Joiners, cruzar primero los datos con menor nmero de registros.

Configurar suficiente cach para evitar el volcado de datos a disco.

66
Transformaciones
Lookup

DEFINICIN

Devuelve un dato, de una tabla o un fichero plano, asociado con un valor de entrada.
Si no encuentra un valor asociado, devuelve NULL
Permite involucrar datos de fuentes externas.

Lookup
Source
Valor Valores
Entrada Lookup

Valor Entrada Salida con valores del lookup


Lookup
Transformation
Condicin Lookup:
ITEM_ID = IN_ITEM_ID
PRICE <= IN_PRICE

67
Transformaciones
Lookup

PARAMETRIZACIN

Lookup SQL Override. Sobrescribir la consulta generada por PowerCenter. Solamente usarla con la
cach activada.
Lookup Table Name. Nombre de la tabla o Source Qualifier en la que se realizarn las bsquedas.
No es necesaria si la sentencia SQL esta sobrescrita.
Lookup Source Filter. Restringe las bsquedas.
Lookup Caching Enabled. Con la cach activada, solamente se realiza una vez la query de
bsqueda, los valores se almacenan en la memoria cach, y el resto de consultas se harn
directamente a los datos de la memoria cach, es ms eficiente.
Lookup Policy on Multiple Match. Indica qu registro devolver cuando al realizar una bsqueda el
resultado es ms de un registro (obtener el primer registro, el ltimo registro, cualquiera o devolver un
error).

68
Transformaciones
Lookup

PARAMETRIZACIN

Lookup Condition. Muestra la condicin de bsqueda establecida en la pestaa Condition.


Connection Information. Indica la base de datos que contiene la tabla de bsqueda. La base de datos
puede ser definida en el mapping, en la sesin o mediante el fichero de parmetros.
Source Type. Indica que la transformacin Lookup realiza las bsquedas sobre una fuente relacional,
fichero plano o Source Qualifier.
Tracing Level. Nivel de detalle que aparecer en el log en las ejecuciones de la transformacin.
Lookup Cach Directory Name. Especifica el directorio usado para generar los ficheros de la cach.
Lookup Cach Persistent. Indica si se utiliza cach persistente. Si esta activada, las bsquedas se
realizan directamente en la cach, a no ser que los ficheros de cach no existan, en este caso, realizar
una consulta a la fuente para volver a generarlos.

69
Transformaciones
Lookup
PARAMETRIZACIN

Lookup Index y Data Cache Size. Usar esta propiedad con la cach activada. La cach puede
establecerse Auto o configurar un valor numrico, ya sea manualmente o mediante la calculadora
de cach. Los datos que no puedan ser almacenados en memoria cach, son volcados a disco.
Frmulas de clculos de las cachs:
Cach de datos.
N de registros en la tabla lookup * ( ( tamao columnas ) + 8 )
Cach de ndice.
N de registros en la tabla lookup * ( ( tamao columnas ) + 16 ) * 2

Dynamic Lookup Cach. Usar esta propiedad con la cach activada. Las inserciones o
actualizaciones de registros en el destino, son tambin actualizadas en la memoria cach de la
lookup.

70
Transformaciones
Lookup
PARAMETRIZACIN

Cach File Name Prefix. Usar esta propiedad con cach persistente. Indica el prefijo del nombre
de los ficheros que contienen la cach persistente de la Lookup.

Recache from Lookup Source. Usar esta propiedad con la cach activada. La cach es
reconstruida con la primera llamada a la transformacin Lookup. Si es usada con cach persistente,
reconstruye los ficheros de la cach antes de usarlas. Si es usada con cach no persistente,
reconstruye la cach en memoria antes de usarla.

Insert Else Update. Usar esta propiedad con la cach dinmica activada. Aplica a los registros
marcados como insercin que llegan a la transformacin Lookup. Si esta opcin esta activada, son
insertados en la cach, si no existen, y actualizados si ya existen. Por el contrario, si la opcin esta
desactivada, los registros son insertados si no existen, pero no actualizados.

71
Transformaciones
Lookup
PARAMETRIZACIN

Update Else Insert. Usar esta propiedad con la cach dinmica activada. Aplica a los registros marcados
como actualizaciones que llegan a la transformacin Lookup. Si la opcin esta activada, los registros son
insertados si no existen, y actualizados si existen, por el contrario, si la opcin esta desactivada, los registros
que existan sern actualizados pero no insertados.
Datetime Format. Definir el formato de la fecha/hora que se aplicar a los campos de tipo fecha ledos de
la fuente por la Lookup. Por defecto, el formato es MM/DD/YYYY HH24:MI:SS
Thousand Separator. Si no se define un separador de miles para puerto, el servicio de integracin usa el
definido en esta propiedad.
Decimal Separator. Si no se define un separador de decimales para un puerto, el servicio de integracin
usa el definido en esta propiedad. Por defecto, el separador decimal es el punto (.).
Case-Sensitive String Comparison. Indica si en las bsquedas se diferenciar entre maysculas y
minsculas en la comparacin de puertos de tipo String.

72
Transformaciones
Lookup
PARAMETRIZACIN

Null Ordering. Indica cmo tratar los valores nulos. Puede establecerse que se traten como valores
superiores o como valores inferiores al resto.

Sorted Input. Indica si el fichero de bsqueda est ordenado. Esta opcin incrementa la eficiencia de las
bsquedas.

Lookup Source is Static. La fuente de bsqueda no cambia en una sesin.

Pre-build Lookup Cach. Permite al servicio de integracin construir la cach antes que la transformacin
Lookup requiera los datos.

Subsecond Precision. Especificar la precisin de los puertos de tipo datetime. Puede indicarse un nmero
entero entre 0 y 9 (milisegundos), por defecto, es 6.

73
Transformaciones
Lookup

LOOKUP CONECTADA

Recibe los valores de entrada directamente desde otra transformacin siguiendo las flechas del flujo de
datos. Por cada registro de entrada, el servicio de integracin consulta la fuente de datos de referencia
(lookup) o la cach basndose en los puertos lookup y en la condicin de la transformacin.

El servicio de integracin devuelve los valores procedentes de la consulta de bsqueda a la siguiente


transformacin.

74
Transformaciones
Lookup
LOOKUP DESCONECTADA O CONDICIONAL

Cuando las operaciones de bsqueda no se realizan para todos los registros del flujo de datos, es
posible configurar la transformacin Lookup para que realice la bsqueda solamente cuando se cumpla
una determinada condicin (Lookup Condicional).
Para implementar una lookup condicional, utilizaremos una transformacin Lookup en modo
desconectado, sin enlaces con otras transformaciones. La forma de usarla es igual que en una funcin,
pudiendo definir mltiples parmetros de entrada y uno de salida.

Tipos de puerto
Input. Indica los parmetros de entrada de la Lookup.
Output. Resultado de la bsqueda.
Lookup. Puertos que podemos utilizar para la condicin de bsqueda.
Return. Indica el parmetro de salida de la Lookup desconectada.
Slo un puerto puede establecerse como Return.

75
Transformaciones
Lookup

BEST PRACTICES

Utilizar una transformacin Lookup de tipo desconectado cuando las operaciones de bsqueda
haya de invocarse para un porcentaje reducido de registros.
Para flujos de datos con altos volmenes, utilizar una transformacin Joiner en lugar de Lookup.
Utilizar cach siempre que la operacin de bsqueda haya que invocarse para un porcentaje
superior al 10% de registros de nuestro flujo de datos.
Conectar a las siguientes transformaciones solamente los puertos necesarios, de esta forma ser
menor la cach necesaria.
No quitar puertos de la transformacin Lookup aunque no se utilicen. Facilitaremos posteriores
cambios sin afectar al rendimiento actual.
Reducir los datos a mantener en cach mediante el filtrado de los datos de la fuente de
referencia modificando la consulta.

76
Transformaciones
Router
DEFINICIN

Enva registros a diferentes destinos basado en una o ms condiciones de filtrado.


Utiliza mltiples condiciones, permitiendo particionar el flujo de datos en varios flujos.
Los registros que no cumplan alguna de las condiciones son enviados al default group.

PARAMETRIZACIN

Grupos. Grupos en los que se va a dividir


el flujo de datos. A cada grupo se le
establece una condicin que ser evaluado
para todos los registros.

Tracing Level. Nivel de detalle que


aparecer en el log en las ejecuciones de la
transformacin.

77
Transformaciones
Router
BEST PRACTICES

Para mltiples filtrados, utilizar la transformacin Router en lugar de Filter, ya que de esta manera podremos
crear diferentes filtros, uno por cada grupo creado, leyendo solamente una vez el flujo de datos completo.

Utilizar condiciones con expresiones sencillas. Para calcular expresiones complejas, utilizar la
transformacin Expression, definiendo un puerto de salida de tipo boolean, a modo de flag, para cada
condicin de grupo, este campo ser el evaluado en cada grupo correspondiente de la transformacin Router.

Definir los grupos con nombres descriptivos.

Los grupos son excluyentes solamente si las condiciones definidas en cada uno lo son, en caso contrario, un
registro puede estar en ms de un grupo al cumplir ms de una condicin. Mientras que los registros que no
cumplan ninguna condicin pertenecern al grupo default.

78
Transformaciones
Update Strategy

DEFINICIN

Establece cmo se actualizarn los registros en las tablas de destino, basado en un criterio establecido.
Determina la estrategia de carga.

Estrategia a nivel de sesin. Permite configurar la forma de tratar


todos los registros. Establecer que todos los registros sean
inserciones, actualizaciones o borrados, o bien, establecer que
cada registro ser marcado en el mapping con su propia estrategia.

Estrategia a nivel del mapping. Mediante la transformacin


Update Strategy podemos marcar la estrategia de carga para cada
registro (insertar, actualizar, borrar o descartar).

79
Transformaciones
Update Strategy

DEFINIENDO UNA ESTRATEGIA DE CARGA

1. Aadir una transformacin de tipo Update Strategy para controlar cmo sern marcados los registros para
ser insertados, actualizados, borrados o rechazados a nivel de mapping. Es imprescindible para poder
realizar operaciones diferentes sobre un mismo destino, por ejemplo, realizar inserciones y
actualizaciones en la misma tabla.

2. Establecer la estrategia al configurar la sesin, marcando que todos los registros sean insertados,
actualizados o borrados. La opcin data driven indica que la estrategia de carga se realiza en el mapping
mediante las transformaciones Update Strategy.

3. Definir la estrategia para cada destino en la sesin, habilitando o deshabilitando inserciones, borrados y la
forma de realizar actualizaciones.

80
Transformaciones
Update Strategy
PARAMETRIZACIN BEST PRACTICES

Update Strategy Expression. Expresin Evitar en la medida de los posible la estrategia de


condicional para marcar los registros con la marcar registros como rechazados al realizar las
estrategia de carga en funcin del resultado de validaciones, ya que al volcarlos al fichero log o de
evaluar la expresin. rechazados, aumentamos el tiempo de ejecucin del
proceso.
Forward Rejected Rows. Indica el tratamiento Utilizar la propiedad Update Strategy Expression
de los registros marcados como rechazados en con expresiones sencillas. Para calcular expresiones
la transformacin. complejas, utilizar la transformacin Expression.
Utilizar la estrategia de carga incremental en lugar
Tracing Level. Nivel de detalle que aparecer de la opcin Update else Insert a nivel de sesin.
en el log en las ejecuciones de la Utilizar varias instancias del mismo destino para
transformacin. las diferentes operaciones configuradas en la
transformacin Update Strategy

81
ndice
1. Introduccin
2. Conceptos Bsicos
3. Arquitectura PowerCenter
4. Transformaciones Bsicas
5. Laboratorio

82
83

Das könnte Ihnen auch gefallen