El "bibliotecario" de los datos: Attilio López revela sus lecciones de oro en Desarrollo
- hace 5 días
- 5 min de lectura
La eficiencia, la calidad del código y la capacidad de orquestar grandes volúmenes de información son pilares fundamentales para el éxito de cualquier proyecto tecnológico. Aunque el especialista en optimización, Attilio López, indica que lo más importante que las pruebas se realicen con datos lo más cercano a lo real, tanto en volumen como en variedad. “Ese simple acto puede marcar una gran diferencia entre el éxito y fracaso de un proyecto”, enfatiza.
Desde la trinchera de los datos conversamos con Attilio López, ingeniero en software, especialista en datos, integraciones y migraciones.
Attilio, nos comparte tips que no aparecen en tutoriales, desde cómo divide tareas entre Oracle y Pentaho, hasta el "error insignificante" que le enseñó a pensar en escalabilidad desde el día uno.
Además, reflexiona sobre cómo la Inteligencia Artificial y las bases de datos autónomas están reescribiendo las reglas de nuestra industria.
Si buscas consejos directos para no sufrir en entornos de producción, o simplemente quieres entender qué pasa realmente en el "backstage" de un especialista TI, tienes que conocer a Attilio, donde su profesión tiene más de oficio, mucha experiencia y aprendizaje permanente en el hacer.

Cuando tienes que decidir entre hacer una transformación compleja en Pentaho (con steps) o resolverla directamente con una vista/materializada en Oracle, ¿cuál es tu criterio principal?
Siempre busco simplicidad y continuidad en el desarrollo. Si el problema se puede resolver con una vista materializada en Oracle, lo hago ahí porque es más eficiente y reutilizable. Cuando la lógica requiere cálculos previos o integraciones con otras fuentes, prefiero un proceso ETL en Pentaho u otra herramienta disponible, ya que ofrece más flexibilidad para manejar distintos orígenes de datos.
¿Qué patrón o técnica de programación (ej: manejo de lotes, logging por steps, variables de contexto) ha marcado un antes y un después en tus proyectos con Pentaho?
Valoro mucho la utilización de parámetros o variables de contexto. Eso evita tener que repetir configuraciones en los distintos steps, facilita la mantención de los procesos y la instalación en distintos ambientes de trabajo.
En términos de depuración ¿qué prefieres: el log de Pentaho, el trace de Oracle o tu propia capa de logging escrita a mano? ¿Por qué?
Otra técnica que me marcó fue el uso de paralelismo. En Pentaho, dividir procesos en ejecución paralela permitió mejorar mucho la transferencia y carga de datos cuando los volúmenes eran grandes. Eso redujo significativamente los tiempos de procesamiento y dio más eficiencia a los jobs."
Si tuvieras que enseñarle a un junior una sola práctica de programación para que no rompa un flujo de Pentaho que interactúa con Oracle, ¿cuál sería?
Creo que haría énfasis en el uso de parámetros, es algo simple de aprender y que a la larga facilita y resuelve muchos problemas en procesos con muchos pasos. Además, simplifica la mantención y cambios de ambientes.
¿Cuál ha sido ese error de programación (en Pentaho u Oracle) que parecía insignificante, pero terminó siendo un cuello de botella inesperado? ¿Cuál fue la enseñanza más valiosa que sacaste de ahí? Y si pudieras darle un solo consejo a un colega para que evite cometerlo, ¿cuál sería?
Un error que parecía menor fue no usar índices en mis consultas de Oracle. Al principio funcionaban bien en entornos pequeños, pero en producción se transformaron en un cuello de botella y en un dolor de cabeza para nuestros amigos DBA. La enseñanza fue que siempre hay que revisar el plan de ejecución y pensar en escalabilidad desde el inicio. Debo agradecer los sabios consejos de los DBA's que siempre estuvieron presentes para orientarme.
Si tuvieras que elegir una sola práctica para garantizar calidad de código en Oracle+Pentaho (pruebas, revisión por pares, análisis estático, otra), ¿cuál eliges y por qué?
Idealmente, las organizaciones deberían contar con estándares de desarrollo claros para reducir riesgos. En ese marco, una práctica clave es la revisión de código por pares o por otros equipos especializados antes de pasar a producción. Eso da seguridad de que los procesos cumplen las normas y evita que errores pequeños se conviertan en problemas mayores en ambientes productivos. También es muy importante la realización de pruebas en ambientes adecuados que contengan los datos necesarios en variedad y volumen de forma detectar errores antes de la implementación en producción.
¿Hay algo que hagas sistemáticamente en PL/SQL porque en Pentaho sería demasiado lento, o viceversa? Cuéntame ese reparto de tareas que nace de la experiencia.
“Pastelero a tus pasteles”. Con la experiencia he aprendido que Oracle debe realizar el trabajo pesado dentro de la base, y dejar a Pentaho que se divierta con los procesos de integración y orquestación. Esa distribución de tareas permite balancear la carga evitando los cuellos de botella.
¿Qué práctica o hábito de programación con Pentaho/Oracle no se enseña en tutoriales, pero es fundamental para no sufrir en producción? Nos puedes dar un consejo para juniors.
En ningún curso o tutorial se habla de la importancia de que las pruebas se realicen con datos lo más cercano a lo real, tanto en volumen como en variedad. Ese simple acto puede marcar una gran diferencia entre el éxito y fracaso de un proyecto. Es algo que aprendí gracias a haber trabajado una organización donde la seguridad es un valor fundamental.
Si solo pudieras elegir uno, ¿Pentaho o PL/SQL? Responde con una frase.
Si tuviera que elegir me quedo con PL/SQL, primero por rendimiento con trabajo pesado dentro de la base, nada supera la optimización que se logra directamente en Oracle. Pero, además, hay que pensar que las organizaciones en general trabajan con bases de datos, mientras Pentaho pasa a ser solo un orquestador o integrador, y no siempre las organizaciones consideran su uso ya que existen otras alternativas que realizan las mismas funciones como Datastage, Oracle Data Integrator (ODI) por nombrar algunas.
¿Cómo describirías lo que hace un especialista en Oracle a alguien que no es del mundo de TI?
Un especialista en Bases de Datos, es como un bibliotecario, que debe manejar una variedad de libros, enciclopedias, revistas y periódicos. Debe mantener un orden y una organización para que los usuarios pueden acceder de forma simple a cada uno. Así como debe velar por el cuidado de estos, por su seguridad, y facilidad de acceso.
De todos los ecosistemas y formas de hacer motores de bases de datos, ¿qué te atrapó de la tecnología Oracle para especializarte en ella?
Fue simple, ¡no tenía opción! Comencé a trabajar en una organización que al paso de unos años realizó un importante cambio tecnológico (uno de muchos después), y el cambio fue Oracle y sus productos. Entonces, me fui especializado a punta de errores, investigación, asesoría de los “gurús” (DBA). Se usaron otros motores de Base de datos con el tiempo que también aprendí, pero Oracle fue siempre el más importante ya que la mayoría de los sistemas operaban sobre él y eso terminó marcando mi camino.
Hoy la Inteligencia Artificial está irrumpiendo en todos los campos y procesos, ¿Cómo ves que la IA está cambiando el ecosistema de Oracle (por ejemplo, con las bases de datos autónomas) y el desarrollo de software en general?
La IA es una verdadera revolución y un gran cambio de como veníamos trabajando o haciendo las cosas, y en el caso de las bases de datos están permitiendo que se administren por si solas.
Antes los especialistas debían preocuparse de optimizar consultas, mejorar la seguridad, mejorar el rendimiento, pero con las bases de datos autónomas, gran parte del trabajo lo realiza la IA. Es el caso de Oracle Autonomous Database y su versión con IA, en donde Oracle abrió dos regiones de nube (Santiago y Valparaíso).






















Comentarios