Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Migre columnas generadas virtuales de Oracle a Postgre SQL
Creado por Veeranjaneyulu Grandhi (AWS), Rajesh Madiwale () y Ramesh Pathuri () AWS AWS
Entorno: producción | Origen: base de datos de Oracle | Objetivo: Amazon compatible RDS con Postgre o SQL Aurora Postgre SQL |
Tipo R: renovar arquitectura | Carga de trabajo: Oracle | Tecnologías: Migración; bases de datos |
AWSservicios: Amazon Aurora; AmazonRDS; AWS DMS |
Resumen
En la versión 11 y anteriores, Postgre SQL no proporciona una función que sea directamente equivalente a una columna virtual de Oracle. Gestionar las columnas generadas de forma virtual al migrar de Oracle Database a la SQL versión 11 o anterior de Postgre resulta difícil por dos motivos:
Las columnas virtuales no están visibles durante la migración.
Postgre SQL no admite la expresión antes de la
generate
versión 12.
Sin embargo, existen soluciones alternativas para emular una funcionalidad similar. Cuando utiliza AWS Database Migration Service (AWSDMS) para migrar datos de Oracle Database a la SQL versión 11 y anteriores de Postgre, puede utilizar funciones de activación para rellenar los valores de las columnas generadas de forma virtual. Este patrón proporciona ejemplos de SQL código de Oracle Database y Postgre que puede utilizar para este fin. SíAWS, puede utilizar Amazon Relational Database Service (Amazon) para SQL Postgre o RDS Amazon Aurora SQL Postgre -Compatible Edition para su base de datos de Postgre. SQL
A partir de la versión 12 de Postgre, se admiten las columnas generadasSQL. Las columnas generadas pueden calcularse sobre la marcha a partir de otros valores de columna o calcularse y almacenarse. Las columnas SQL generadas por Postgre son similares a las columnas
Requisitos previos y limitaciones
Requisitos previos
Una cuenta activa AWS
Base de datos de origen de Oracle
SQLBases de datos Target Postgre (en Amazon RDS para Postgre SQL o Aurora, compatible con Postgre) SQL
Limitaciones
Se aplica solo a las versiones de Postgre SQL anteriores a la versión 12.
Se aplica a la versión 11g o posterior de Oracle Database.
Las columnas virtuales no se admiten en las herramientas de migración de datos.
Solo se aplica a las columnas definidas en la misma tabla.
Si una columna generada de forma virtual hace referencia a una función determinista definida por el usuario, no se puede utilizar como columna clave de partición.
El resultado de la expresión debe ser un valor escalar. No puede devolver un tipo de datos proporcionado por Oracle, un tipo definido por el usuario,
LOB
oLONG RAW
.Los índices que se definen en columnas virtuales equivalen a los índices basados en funciones en Postgre. SQL
Se deben recopilar las estadísticas de las tablas.
Herramientas
pgAdmin 4
es una herramienta de gestión de código abierto para Postgre. SQL Esta herramienta proporciona una interfaz gráfica que simplifica la creación, el mantenimiento y el uso de los objetos de la base de datos. Oracle SQL Developer
es un entorno de desarrollo integrado y gratuito para trabajar con bases de datos de Oracle tanto SQL en despliegues tradicionales como en la nube.
Epics
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Cree una tabla de base de datos de Oracle de origen. | En Oracle Database, cree una tabla con columnas generadas de forma virtual mediante la siguiente declaración.
En esta tabla de origen, los datos de la | DBA, desarrollador de aplicaciones |
Cree una SQL tabla de Postgreg de destino en. AWS | Cree una SQL tabla de Postgre con la siguiente AWS declaración.
En esta tabla, la columna | DBA, desarrollador de aplicaciones |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Crea un disparador de PostgreSQL. | En PostgreSQL, cree un disparador.
| DBA, desarrollador de aplicaciones |
Crea una función de SQL activación de Postgre. | En PostgreSQL, cree una función para el disparador. Esta función rellena una columna virtual que la aplicación o AWS DMS actualiza y valida los datos.
| DBA, desarrollador de aplicaciones |
Tarea | Descripción | Habilidades requeridas |
---|---|---|
Cree una instancia de replicación. | Para crear una instancia de replicación, siga las instrucciones de la AWS DMS documentación. La instancia de replicación debe estar en la misma nube privada virtual (VPC) que las bases de datos de origen y destino. | DBA, desarrollador de aplicaciones |
Cree puntos de conexión de origen y destino. | Para crear los puntos finales, siga las instrucciones de la AWS DMS documentación. | DBA, desarrollador de aplicaciones |
Probar los puntos de conexión. | Puede probar las conexiones de los puntos finales especificando la instancia de replicación VPC y seleccionando Ejecutar prueba. | DBA, desarrollador de aplicaciones |
Cree e inicie una tarea de carga completa. | Para obtener instrucciones, consulte Creación de una tarea y Configuración de tareas de carga completa en la AWS DMS documentación. | DBA, desarrollador de aplicaciones |
Valide los datos de la columna virtual. | Compare los datos de la columna virtual en las bases de datos de origen y destino. Puede validar los datos manualmente o escribir un script para este paso. | DBA, Desarrollador de aplicaciones |
Recursos relacionados
Introducción a AWS Database Migration Service (AWSDMSdocumentación)
Uso de una base de datos Oracle como fuente para AWS DMS (AWSDMSdocumentación)
Uso de una SQL base de datos de Postgre como destino para AWS DMS (documentación) AWS DMS
Columnas generadas en Postgre (documentación de Postgre SQL
) SQL Funciones de activación
(documentación de Postgre) SQL Columnas virtuales
en Oracle Database (documentación de Oracle)