Pregunta

La mayoría de mi empresa utiliza powercenter informatica para los trabajos de movimiento de datos de tipo Extraer-Transformar-Carga entre bases de datos.

Sin embargo, el proyecto en el que estoy tiene un gran trabajo personalizado de Perl con algunos programas Java como medida para mover los datos y activar otras actualizaciones.

Se habla de reescribir la cosa para usar powercenter en su lugar, ¿cuáles son las experiencias de las personas en un proyecto de este tipo, tiene sentido? Parece que intercambias mucha flexibilidad para ir a un "fuera de la plataforma" solución, pero ¿las herramientas ETL le compran mucho en términos de productividad, por ejemplo?

¿Fue útil?

Solución

Informatica es bueno para un equipo de operaciones. Permite a una persona no técnica la capacidad de supervisar y volver a ejecutar trabajos. Sin embargo, hace que cualquier tarea sea mucho más complicada de lo que debe ser. Es una gran pieza de software, y lleva un tiempo aprender, y está limitada en las transformaciones que puede hacer sin programación. Ciertamente usaría Perl o un lenguaje de programación cualquier día en un " Enterprise ETL " herramienta.

Otros consejos

Teníamos Informatica y Tibco a partir de 2001, y la gente podía recoger fácilmente Informatica (para tareas básicas), pero Tibco fue una molestia. Tibco ahora se ha ido, y la huella de Informatica ha crecido, y su código ahora es visto incluso por Business Analysts ...

Una vez que sea competente, puede hacer muchas cosas rápidamente (hice 3 tablas de datos y 12 dimensiones de múltiples fuentes en una semana, para un mercado de datos de finanzas y PO), y es más fácil de mantener cuando se cambia el código, la programación , hacer la transición a otro desarrollador, etc. Menos tiempo divirtiéndose, más tiempo en reuniones y en el papeleo de su organización.

Lo usamos para mercados de datos, movimientos de datos e interfaces a ASP.

Ahora tiene una transformación Java si desea hacer algo totalmente personalizado, en lugar de un programa C compilado.

En su caso, me convertiría a Informatica por dos razones: Análisis de impacto (SLA) y mantenimiento (monitoreo, herramienta ETL única). La reutilización es otra ventaja.

Específico para informatica: tener un análisis de impacto es una gran herramienta: previene muchas correcciones de emergencia y lo ayuda a mantener sus acuerdos de nivel de servicio. Para mí, mejorar los SLA está por encima de la flexibilidad. Las funciones de monitoreo en Informatica también son muy útiles.

En general: si su empresa se está moviendo a una única herramienta ETL, la conversión de ese trabajo facilitará el mantenimiento. También es más eficiente y confiable para los equipos de soporte monitorear una herramienta. Esperamos que su empresa intente hacer objetos reutilizables, lo que facilita la conversión y aumenta la productividad futura (nuevos objetos reutilizables que puede crear durante la conversión).

Una advertencia: las tareas de conversión son realmente difíciles de estimar. Conviértalo en un proyecto independiente si puede (no es parte de un producto de mayor tamaño).

La codificación te da una gran flexibilidad. Ya sea Perl, Python, C #, Java, SQL, lo que sea. Puedes construir rápida y fácilmente algunas transformaciones de datos. ¿Por qué alguien se molestaría en mirar el software ETL, verdad?

Supongamos que tiene la solución completa lista. Todos sus scripts en el idioma que elija están ahí. Ahora algunas preguntas:

  • Si crece la cantidad de datos y no puede caber todo en la memoria, ¿dónde se crea el caché? ¿Puedes controlarlo?
  • ¿Cómo creas todos los registros? ¿Has creado eso?
  • ¿Qué pasa con el manejo de errores? En caso de errores (por ejemplo, problemas de espacio en disco, problemas de conectividad, ets.) ¿Se indica fácilmente la causa?
  • ¿Cómo se hace el seguimiento? ¿Hay algún panel dinámico?
  • ¿Es posible la agrupación con su solución?
  • ¿Es posible ejecutar alguna transformación de datos en varios subprocesos para que se ejecute más rápido?
  • Conmutación por error: ¿cómo maneja las fallas? ¿Es posible reiniciar un trabajo desde el punto de falla?
  • Conectividad: aparece una nueva fuente de datos, por ejemplo, Salesforce, ¿cuánto tiempo necesita para mejorar el script para leerlo / escribirlo?
  • ¿Puede conectarse a sistemas ERP como SAP?
  • ¿Puede obtener linaje de datos y análisis de impacto de los scripts?

Todo eso, y aún más, que obtienes cuando usas algún software ETL de descenso. Alguien ha estado trabajando duro y durante años para lidiar con todos esos problemas y obtener alguna GUI para ello. Esa es la diferencia.

Ahora: si necesita algo para cargar un archivo en una base de datos de vez en cuando, cualquier cosa servirá. Pero si planea tener muchos de esos, vale la pena considerar un software ETL. Y si Informatica ya está allí en su empresa, ¿por qué molestar y reinventar la rueda?

Las herramientas ETL como Informatica le ofrecen productividad (e imágenes bonitas) si tiene personas que no pueden codificar. Tiene sentido si no hay nadie que pueda mantener el código. Para alguien que puede codificar, es como contratar a un gorila de 500 libras para mover un grano de arena.

Vea también: Esta publicación y esta publicación en este hilo

Es bastante agradable para el registro automático de trabajos (no tiene que pensar en lo que quiere registrar ... todo está hecho para usted) y las herramientas de monitoreo de tiempo de ejecución (a qué velocidad está mi flujo de trabajo , y donde falló?).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top