Life Hacks para desarrolladores: Uso efectivo de SQ (calificador de origen) en Informatica Power Center

¡Hola a todos los Habroresidents!

Abrimos el primer blog de la compañía RDTEX con trucos para desarrolladores. Esperamos que uno de los lectores se aproveche de ellos.

Los trucos de la vida se inventaron en el curso del trabajo en un proyecto para transferir datos de un sistema a otro para la posterior construcción de informes en uno de los principales bancos de la Federación de Rusia.

Tecnologías utilizadas:

Sistema de origen de datos: Oracle RDBMS (versión 11.2.0.4.0)
Sistema receptor de datos - RDBMS Oracle (versión 11.2.0.4.0)
Integration Bus - Informatica (versión 10.1.1)

Durante la implementación de un importante proyecto de integración, encontramos los siguientes problemas:

1. Uso ineficiente de SQ [Source Qualifier] en Informatica Power Center

Al usar SQ [Source Qualifier] en Informatica Power Center, se reveló una restricción en el número de caracteres de entrada. El número máximo de caracteres permitido es 32767. En la figura siguiente se muestra un ejemplo del uso irracional del calificador de origen:


Figura 1 Captura de pantalla de SQ Informatica Power Center

Esta captura de pantalla muestra que los espacios consumen espacio de caracteres, como resultado de lo cual las consultas complejas de SQL no se ajustan completamente (es decir, se cortan cuando se insertan en el calificador de origen).

La siguiente figura muestra el uso correcto del calificador de origen (los cambios se resaltan en rojo):


Figura 2 Captura de pantalla de SQ Informatica Power Center con una consulta modificada

Ir a la siguiente línea y la alineación cuestan el enésimo número de caracteres, eliminando los cuales pudimos ajustar todo el código SQL.

2. Conversión incorrecta de números infinitamente grandes

Se cargaron números infinitamente grandes a la base de datos Oracle en el siguiente formato:

1267650600228230000000000000000

Y deben cargarse en el formato:

1267650600228229401496703205376
Es decir los valores se redondearon a partir de una determinada posición de dígitos.

Ofrecemos la siguiente solución:

Durante el desarrollo de asignaciones en Informatica Power Center, el formato de campo (por ejemplo, cadena) se establece inmediatamente en una determinada etapa para valores que definitivamente serán grandes, mientras que:

  • Si usamos el formato decimal y los valores pueden tener hasta 28 caracteres, entonces debemos habilitar Propiedades → “Habilitar alta precisión” → “Sí” en las propiedades del flujo de trabajo en Workflow Manager.
  • Si utilizamos el formato doble, en este caso los valores que excedan los 15 caracteres (por ejemplo, 20) pueden llegar a este atributo, entonces el valor se cortará a 15 dígitos significativos y se pondrá cero (0) en el resto (es decir, los últimos 5 caracteres serán cero ) En este caso, es mejor dejar el formato de cadena y aumentar el tamaño al deseado (por ejemplo, cadena20).

Si para resumir el uso de la herramienta, se pueden distinguir las siguientes ventajas :

  1. la herramienta es conveniente para transferir una gran cantidad de datos, calculados en terabytes (por ejemplo, hasta 25-30 tb), especialmente si necesita transferirlos con un número mínimo de conversiones (casi uno a uno);
  2. Posibilidad de "extraer" automáticamente los atributos (opción Propagar atributos), así como "resaltar" dentro del mapeo (de dónde y de dónde se extraen los datos);
  3. la capacidad de seleccionar el modo operativo de una herramienta ETL y una herramienta ELT (depende del proyecto de TI específico).

Y algunos inconvenientes para la objetividad de la imagen:

  1. falta de lógica de transformación de datos "compleja";
  2. Desde el punto de vista del soporte de la herramienta en sí y la comprensión de la lógica de las transformaciones individuales, es inferior a algunos competidores (por ejemplo, Oracle Data Integrator).

Source: https://habr.com/ru/post/es433880/


All Articles