En resumen Una migración realista de Oracle a PostgreSQL cuesta entre 5.000 € y 80.000 € o más, dependiendo de la complejidad del esquema, el volumen de PL/SQL y si se requiere una interrupción cero del servicio.
Las herramientas son gratuitas.
El costo se compone casi en su totalidad del tiempo de los consultores, el esfuerzo de prueba y los cambios en la aplicación.
La mayoría de las migraciones de complejidad media recuperan su costo total dentro del primer año de ahorros en licencias de Oracle.
Su renovación de soporte de Oracle ha vencido.
La cifra es superior a la del año pasado, una vez más.
Ya sabes que PostgreSQL es maduro y gratuito.
Pero cada vez que pregunta cuánto costaría una migración, obtiene respuestas vagas o, peor aún, un presupuesto de seis cifras de una gran consultora que apenas cubre la fase de descubrimiento.
Este artículo ofrece un desglose realista y estructurado, no un argumento de venta.
Basándome en las evaluaciones que he llevado a cabo en entornos de banca, seguros y telecomunicaciones en la UE, he aquí lo que cuestan realmente las migraciones y lo que hace que esa cifra aumente o disminuya.
Índice
¿Cuánto cuesta realmente una migración de Oracle a PostgreSQL?
La mayoría de las migraciones de complejidad media oscilan entre 15.000 y 50.000 euros en tiempo total de consultoría, lo que incluye la evaluación, la conversión de esquemas, la migración de datos, las pruebas y la transición.
Las migraciones sencillas (pocos esquemas, mínimo PL/SQL) pueden salir por bastante menos de 15.000 euros.
Las migraciones complejas con mucha lógica de procedimientos almacenados, funciones específicas de Oracle o requisitos de tiempo de inactividad cero superan los 50.000 euros.
Las herramientas en sí no cuestan nada.
ora2pg, la herramienta estándar de migración de Oracle a PostgreSQL, es de código abierto y gratuita.
PostgreSQL es de código abierto y gratuito.
Cada euro de coste de migración es mano de obra: análisis, conversión, pruebas y los cambios de aplicación que casi siempre acompañan a una migración de base de datos.
¿Qué se incluye en el costo?
Una migración bien gestionada tiene cinco componentes de coste.
1. Evaluación y determinación del alcance (2-3 días)
Antes de iniciar cualquier trabajo de migración, es necesario evaluar el esquema: cuántas tablas, cuánto PL/SQL, qué características específicas de Oracle se utilizan, de qué depende el código de la aplicación.
Esta es la fase más importante; determina todo lo demás.
Omitirlo es donde las migraciones se salen del presupuesto.
2. Conversión de esquemas (varía en función de la complejidad)
Las tablas, secuencias, índices y vistas se convierten en gran medida automáticamente con ora2pg.
El esfuerzo manual está en PL/SQL: procedimientos almacenados, funciones, paquetes y disparadores.
Cada unidad PL/SQL debe revisarse, portarse a PL/pgSQL, probarse y validarse.
Un esquema sin PL/SQL se convierte en días.
Un esquema con 50 procedimientos almacenados y 10 paquetes se convierte en semanas.
3. Migración y validación de datos (2-5 días para un esquema limpio)
Trasladar los datos suele ser la fase menos costosa.
ora2pg se encarga de la extracción y genera scripts de carga compatibles con PostgreSQL.
El coste está en la validación: recuento de filas, comprobaciones puntuales de tipos de datos, reinicio de secuencias e integridad de claves externas tras la carga.
4. Pruebas (20-30% del esfuerzo total del proyecto)
Este es el componente que más se subestima.
Las pruebas de regresión funcional, la comparación de líneas de base de rendimiento y las pruebas de integración de aplicaciones llevan tiempo.
Si el sistema no dispone de un conjunto de pruebas, este coste aumenta considerablemente.
5. 5. Cambios en la aplicación
Este es el comodín.
Dialectos SQL de Oracle - ROWNUM, DE DUAL, NVL(), (+) sintaxis outer join, CONECTAR POR las consultas jerárquicas — todas deben ser reemplazadas con equivalentes de PostgreSQL en el código de la aplicación.
Para una aplicación moderna que utiliza ANSI SQL y un ORM, esto es mínimo.
En el caso de una aplicación heredada con Oracle SQL integrado, esto puede costar más que la propia migración de la base de datos.
¿Está definiendo el alcance de una migración y quiere una estimación de costos realista antes de comprometerse?
Ofrezco una evaluación con una tarifa fija que le ofrece un desglose por escrito de la complejidad, el esfuerzo y el riesgo... ver qué cubre la evaluación →
¿Qué eleva el costo de la migración?
PL/SQL Pesado: Los procedimientos almacenados, las funciones, los paquetes y los desencadenadores son los principales generadores de costes.
PL/SQL de Oracle y PL/pgSQL de PostgreSQL son lo suficientemente similares como para ser peligrosos: la sintaxis parece familiar, pero la semántica difiere de maneras que crean errores silenciosos.
Cada unidad requiere revisión manual.
Características específicas de Oracle: El particionamiento, las colas avanzadas, la actualización rápida de vistas materializadas y Oracle Text requieren decisiones arquitectónicas, no solo conversión de sintaxis.
Algunos tienen equivalentes directos en PostgreSQL.
Algunos requieren rediseño.
Requisito de tiempo de inactividad cero: Una migración donde el sistema debe permanecer activo durante el corte requiere replicación lógica, una capa de doble escritura o captura de datos de cambio, y un procedimiento de prueba y cambio considerablemente más complejo.
Plan de 30–50% de costo adicional en comparación con una transición durante una ventana de mantenimiento.
Grandes volúmenes de datos: Migrar terabytes de datos lleva tiempo y requiere una orquestación cuidadosa.
El costo de conversión no escala linealmente con el volumen de datos, pero la planificación y la validación de la transición sí.
No existe cobertura de pruebas: Si la aplicación no tiene pruebas automatizadas, cada cambio funcional necesita ser validado manualmente.
Este es el mayor multiplicador oculto del costo de las pruebas.
¿Qué reduce el costo de la migración?
Esquema simple, poco o nada de PL/SQL: Si la base de datos se utiliza principalmente como un almacenamiento de datos con toda la lógica en la capa de aplicación, la conversión del esquema es rápida y en su mayoría automatizada.
Aplicación moderna que ya usa SQL ANSI: Una aplicación respaldada por un ORM que utiliza la sintaxis SQL estándar requiere cambios mínimos en el lado de la aplicación después de que la base de datos cambie.
Ventana de corte flexible: Una migración durante una ventana de mantenimiento — donde la aplicación se desconecta brevemente durante el cambio — es significativamente más sencilla y económica que una migración en vivo.
Para la mayoría de los sistemas internos o que no están orientados al consumidor, una ventana de mantenimiento de dos horas es aceptable.
Ya existe una buena cobertura de pruebas: Las pruebas de regresión e integración existentes reducen drásticamente el costo de validación posterior a la migración.
¿Cuánto tiempo tarda una migración en recuperar su costo?
Para la mayoría de las organizaciones, una migración de Oracle a PostgreSQL se amortiza en el primer año por el ahorro en licencias.
Oracle Enterprise Edition tiene un precio de aproximadamente 43.000 € por licencia de procesador, más un 22% de tasas anuales de soporte.
Un servidor estándar de doble zócalo con 16 núcleos tiene un coste de más de 350.000 € solo en licencias EE básicas, antes de cualquier opción adicional.
El soporte anual de esa configuración supera los 75.000 € al año.
Una migración de complejidad media con un costo de €25,000 en tiempo de consultoría ahorra esa tarifa anual completa de soporte en tres o cuatro meses.
Los ahorros se capitalizan cada año a partir de entonces.
Las empresas que retrasan la migración no están ahorrando dinero.
Le están pagando a Oracle decenas de miles de euros al año por un problema que ya está resuelto.
¿La migración DIY es una opción?
Técnicamente, sí.
Las herramientas son gratuitas y la documentación es exhaustiva.
Un DBA senior con experiencia en PostgreSQL puede realizar una migración internamente.
El riesgo no son las herramientas — son las lagunas de conocimiento.
Oracle y PostgreSQL se comportan de manera diferente de formas que no son obvias hasta que algo falla en producción: manejo de NULL en índices únicos, la trampa de Oracle DATE versus PostgreSQL TIMESTAMP, conversiones de tipo implícitas que Oracle acepta y PostgreSQL rechaza, patrones de PL/SQL que se convierten sintácticamente pero fallan semánticamente.
Un especialista experimentado en migración detecta esto antes de la puesta en marcha.
Un equipo interno los descubre después.
Preguntas frecuentes
¿Cuánto cuesta una migración de Oracle a PostgreSQL?
La mayoría de las migraciones de complejidad media cuestan entre 15.000 y 50.000 € en tiempo total de consultores.
Migraciones sencillas con un mínimo de PL/SQL pueden costar bastante menos de 15.000 €.
Migraciones complejas con procedimientos almacenados pesados, características específicas de Oracle o requisitos de tiempo de inactividad cero cuestan más.
Las herramientas de migración en sí son gratuitas: el costo reside enteramente en la mano de obra.
El mayor impulsor de costos en una migración de Oracle a PostgreSQL es la conversión y migración de aplicaciones.
Volumen PL/SQL.
Los procedimientos almacenados, funciones, paquetes y disparadores requieren revisión manual y portabilidad a PL/pgSQL.
Las tablas, secuencias y vistas básicas están en gran medida automatizadas.
Un esquema sin PL/SQL y sin características específicas de Oracle se puede migrar en días.
Un esquema con lógica PL/SQL significativa tarda semanas.
¿Cuánto tiempo toma una migración de Oracle a PostgreSQL?
Una migración pequeña se puede completar en dos a cuatro semanas de tiempo calendario.
Una migración de complejidad media suele durar entre ocho y doce semanas.
Las migraciones complejas con requisitos de tiempo de inactividad cero o PL/SQL pesados pueden tardar de tres a seis meses.
El cronograma depende más de la complejidad y los requisitos de prueba que del volumen de datos.
¿Ahorraremos dinero al migrar a PostgreSQL?
En la mayoría de los casos, sí, sustancialmente.
Las licencias de Oracle Enterprise Edition más las tarifas de soporte anual suelen ascender a decenas de miles de euros por servidor al año.
Una migración que elimina esas tarifas recupera su costo en meses, no en años.
Los ahorros se acumulan cada año después del primero.
¿Podemos migrar a PostgreSQL sin interrupción?
Sí, pero añade costo y complejidad.
Una migración sin tiempo de inactividad requiere una capa de replicación lógica o captura de datos de cambios para mantener sincronizada la base de datos PostgreSQL con Oracle durante el período de transición.
Para la mayoría de los sistemas internos o que no están orientados al consumidor, una ventana de mantenimiento planificada es más simple y confiable.
El enfoque correcto depende de los requisitos de SLA del sistema.
En resumen
La migración de Oracle a PostgreSQL es una inversión única que elimina un costo de licencia recurrente que se acumula cada año.
Las herramientas son gratuitas.
El costo es tiempo de consultor — principalmente conversión de esquemas, portabilidad de PL/SQL y pruebas.
Una migración bien definida comienza con una evaluación que mapea cada impulsor de costos antes de que comience cualquier trabajo.
Si desea comprender cuánto costaría una migración para su entorno específico, ofrezco una evaluación a precio fijo que entrega un análisis de complejidad por escrito, una estimación de esfuerzo y un registro de riesgos.
Ver qué cubre la evaluación
