Conectarse a Netezza con AWS Schema Conversion Tool - AWS Schema Conversion Tool

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.

Conectarse a Netezza con AWS Schema Conversion Tool

Puede utilizarlos AWS SCT para convertir esquemas, objetos de código y código de aplicaciones de Netezza a Amazon Redshift.

Privilegios para Netezza como origen

Los privilegios necesarios para Netezza como origen se enumeran a continuación:

  • select on system.definition_schema.system view

  • select on system.definition_schema.system table

  • select on system.definition_schema.management table

  • lista en <database_name>

  • lista en <schema_name>

  • lista en <database_name>.all.table

  • lista en <database_name>.all.tabla externa

  • lista en <database_name>.all.view

  • lista en <database_name>.all.vista materializada

  • lista en <database_name>.todo.procedimiento

  • lista en <database_name>.all.sequence

  • lista en <database_name>.all.función

  • lista en <database_name>.all.aggregate

En el ejemplo anterior, sustituya los marcadores de posición del modo que sigue:

  • Reemplazar database_name con el nombre de la base de datos de origen.

  • Reemplazar schema_name con el nombre del esquema de origen.

AWS SCT requiere acceso a las siguientes tablas y vistas del sistema. Puede conceder el acceso a estos objetos en lugar de conceder el acceso a system.definition_schema.system view y system.definition_schema.system tables en la lista anterior.

  • select on system.definition_schema._t_aggregate

  • select on system.definition_schema._t_class

  • select on system.definition_schema._t_constraint

  • select on system.definition_schema._t_const_relattr

  • select on system.definition_schema._t_database

  • select on system.definition_schema._t_grpobj_priv

  • select on system.definition_schema._t_grpusr

  • select on system.definition_schema._t_hist_config

  • select on system.definition_schema._t_object

  • select on system.definition_schema._t_object_classes

  • select on system.definition_schema._t_proc

  • select on system.definition_schema._t_type

  • select on system.definition_schema._t_user

  • select on system.definition_schema._t_usrobj_priv

  • select on system.definition_schema._vt_sequence

  • select on system.definition_schema._v_aggregate

  • select on system.definition_schema._v_constraint_depends

  • select on system.definition_schema._v_database

  • select on system.definition_schema._v_datatype

  • select on system.definition_schema._v_dslice

  • select on system.definition_schema._v_function

  • select on system.definition_schema._v_group

  • select on system.definition_schema._v_obj_relation

  • select on system.definition_schema._v_obj_relation_xdb

  • select on system.definition_schema._v_procedure

  • select on system.definition_schema._v_relation_column

  • select on system.definition_schema._v_relation_keydata

  • select on system.definition_schema._v_relobjclasses

  • select on system.definition_schema._v_schema_xdb

  • select on system.definition_schema._v_sequence

  • select on system.definition_schema._v_synonym

  • select on system.definition_schema._v_system_info

  • select on system.definition_schema._v_sys_constraint

  • select on system.definition_schema._v_sys_object_dslice_info

  • select on system.definition_schema._v_sys_user

  • select on system.definition_schema._v_table

  • select on system.definition_schema._v_sys_constraint

  • select on system.definition_schema._v_table

  • select on system.definition_schema._v_table

  • select on system.definition_schema._v_table

  • select on system.definition_schema._v_user

  • select on system.definition_schema._v_user

  • select on system.information_schema._v_relation_column

  • select on system.information_schema._v_table

  • select on $hist_column_access_*

Conexión a Netezza como origen

Utilice el siguiente procedimiento para conectarse a su base de datos de origen de Netezza con AWS Schema Conversion Tool.

Para conectarse a una base de datos Netezza de origen
  1. En el AWS Schema Conversion Tool, selecciona Añadir fuente.

  2. Seleccione Netezza y, a continuación, seleccione Siguiente.

    Se abrirá el cuadro de diálogo Agregar origen.

  3. En Nombre de conexión, escriba un nombre para su base de datos. AWS SCT muestra este nombre en el árbol del panel izquierdo.

  4. Utilice las credenciales de la base de datos de AWS Secrets Manager o introdúzcalas manualmente:

    • Para usar las credenciales de base de datos de Secrets Manager, siga las instrucciones siguientes:

      1. En Secreto de AWS , elija el nombre del secreto.

      2. Seleccione Rellenar para rellenar automáticamente todos los valores del cuadro de diálogo de conexión a la base de datos de Secrets Manager.

      Para obtener información sobre el uso de las credenciales de bases de datos de Secrets Manager, consulteConfigurando AWS Secrets Manager en el AWS Schema Conversion Tool.

    • Para introducir manualmente la información de conexión a la base de datos de origen de Netezza, siga las instrucciones siguientes:

      Parámetro Acción
      Nombre del servidor

      Introduzca el nombre o la dirección IP del sistema de nombres de dominio (DNS) del servidor de base de datos de origen.

      Puerto del servidor

      Escriba el puerto utilizado para conectarse al servidor de base de datos de origen.

      Nombre de usuario y Contraseña

      Introduzca las credenciales de la base de datos para conectarse al servidor de base de datos de origen.

      AWS SCT utiliza la contraseña para conectarse a la base de datos de origen solo cuando decide conectarse a la base de datos en un proyecto. Para evitar que la contraseña de su base de datos de origen quede expuesta, AWS SCT no la almacena por defecto. Si cierra su proyecto de AWS SCT y vuelve a abrirlo, se le solicitará la contraseña para conectarse a su base de datos de origen, según sea necesario.

      Almacenar contraseña

      AWS SCT crea un almacén seguro para almacenar los SSL certificados y las contraseñas de las bases de datos. Puede habilitar esta opción para almacenar la contraseña de la base de datos y conectarse rápidamente a la base de datos sin necesidad de introducir la contraseña.

      Ruta del controlador de Netezza

      Escriba la ruta al controlador que va a usar para conectarse a la base de datos de origen. Para obtener más información, consulte Instalación de JDBC controladores para AWS Schema Conversion Tool.

      Si almacena la ruta al controlador en la configuración global del proyecto, la ruta del controlador no aparecerá en el cuadro de diálogo de conexión. Para obtener más información, consulte Almacenamiento de rutas a los controladores en la configuración global.

  5. Elija Probar conexión para comprobar que AWS SCT puede conectarse a la base de datos de origen.

  6. Seleccione Conectar para conectarse a su base de datos de origen.

Configurar la replicación continua de datos

Tras convertir los esquemas de base de datos de Netezza y aplicarlos a la base de datos de Amazon Redshift, puede migrar los datos con agentes de extracción de datos. AWS SCT El agente extrae los datos y los carga en el bucket de Amazon S3. A continuación, puede utilizar AWS SCT para copiar los datos de Amazon S3 a Amazon Redshift.

Si los datos de la base de datos de origen cambian durante el proceso de migración, puede capturar los cambios en curso con sus agentes de extracción de AWS SCT datos. Seguidamente, puede replicar estos cambios continuos en la base de datos de destino después de completar la migración de datos inicial. Este proceso se denomina replicación continua de datos o captura de datos de cambios (CDC).

Para configurar la replicación continua de datos para migraciones de Netezza a Amazon Redshift
  1. En la base de datos de origen, cree una base de datos de historial. Puede utilizar el siguiente ejemplo de código en la interfaz de línea de comandos de Netezza ()CLI.

    nzhistcreatedb -d history_database_name -t query -v 1 -u load_user -o histdb_owner -p your_password

    En el ejemplo anterior, sustituya history_database_name por el nombre de la base de datos de historial. A continuación, sustituya load_user con el nombre del usuario que ha definido para cargar los datos del historial en la base de datos. A continuación, sustituya histdb_owner por el nombre del usuario que ha definido como propietario de la base de datos del historial. Asegúrese de haber creado este usuario y de haberle concedido el permiso CREATE DATABASE. Por último, sustituya your_password con una contraseña segura.

  2. Configure el registro del historial. Para ello, use el siguiente ejemplo de código.

    CREATE HISTORY CONFIGURATION history_configuration_name HISTTYPE QUERY DATABASE history_database_name USER load_user PASSWORD your_password COLLECT PLAN, COLUMN LOADINTERVAL 1 LOADMINTHRESHOLD 0 LOADMAXTHRESHOLD 0 STORAGELIMIT 25 LOADRETRY 2 VERSION 1;

    En el ejemplo anterior, sustituya history_configuration_name y history_database_name con los nombres de la configuración del historial y de la base de datos del historial. A continuación, sustituya load_user con el nombre del usuario que ha definido para cargar los datos del historial en la base de datos. A continuación, sustituya your_password con una contraseña segura.

  3. Otorgar permisos de lectura para todas las tablas de la base de datos del historial. Puede utilizar el siguiente código de ejemplo para conceder el permiso SELECT.

    GRANT SELECT ON history_database_name.ALL.TABLE TO your_user;

    En el ejemplo anterior, sustituya history_database_name por el nombre de la base de datos de historial. A continuación, sustituya your_user con el nombre del usuario con permisos mínimos para trabajar con la base de datos de Netezza. Utilice las credenciales de este usuario de base de datos en. AWS SCT

  4. Recopile las estadísticas de cada tabla del esquema de origen para obtener información sobre la cardinalidad de las columnas. Puede utilizar el siguiente comando para generar estadísticas en la base de datos de historial.

    GENERATE STATISTICS on "schema_name"."table_name";

    En el ejemplo anterior, sustituya schema_name y table_name por el nombre del esquema y la tabla de la base de datos.

  5. Asegúrese de que ha completado los requisitos. Para ello, ejecute la siguiente consulta:

    SELECT COUNT(*) FROM history_database_name.history_schema_name."$hist_column_access_N";

    En el ejemplo anterior, sustituya history_database_name y history_schema_name por el nombre de la base de datos y el esquema del historial. A continuación, sustituya N con el número de versión de la base de datos del historial. Para obtener más información sobre las versiones de las bases de datos históricas, consulte la documentación de IBMNetezza.

  6. Instale el agente de extracción de datos. Para obtener más información, consulte Instalación de agentes de extracción.

    Asegúrese de que el parámetro {working.folder} del archivo settings.properties de todas las instancias del extractor apunte a la misma carpeta. En este caso, sus extractores pueden coordinar la CDC sesión y utilizar un único punto de transacción para todas las subtareas.

  7. Registre su agente de extracción de datos. Para obtener más información, consulte Registrar los agentes de extracción con el AWS Schema Conversion Tool.

  8. Crea tu tarea. CDC Para obtener más información, consulte Crear, ejecutar y supervisar una AWS SCT tarea.

    1. Abra su proyecto en AWS SCT. En el panel izquierdo, elija la tabla de origen. Abra el menú contextual (clic secundario) y seleccione Crear tarea local.

    2. En Nombre de la tarea, introduzca un nombre para la tarea de migración de datos.

    3. En Modo de migración, seleccione Extraer, cargar y copiar.

    4. Seleccione HabilitarCDC.

    5. Elija la pestaña de CDCconfiguración y defina el alcance y el calendario de CDC las sesiones.

    6. Seleccione Probar tarea para comprobar que se puede conectar a su carpeta de trabajo, bucket de Amazon S3 y almacenamiento de datos de Amazon Redshift.

    7. Seleccione Crear para crear su tarea.

    8. Elija la pestaña Tareas, seleccione su tarea de la lista y elija Iniciar.

  9. La AWS SCT tarea mantiene la coherencia transaccional en la base de datos de destino. El agente de extracción de datos replica las transacciones del origen en el orden de los identificadores de transacción.

    Si detiene alguna de las sesiones de migración o si se produce un error, el CDC procesamiento también se detiene.

Configuración de conversión de Netezza a Amazon Redshift

Para editar la configuración de conversión de Netezza a Amazon Redshift, seleccione Configuración AWS SCT en y, a continuación, elija Configuración de conversión. En la lista superior, elija Netezza y, a continuación, Netezza — Amazon Redshift. AWS SCT muestra todos los ajustes disponibles para la conversión de Netezza a Amazon Redshift.

La configuración AWS SCT de conversión de Netezza a Amazon Redshift incluye opciones para lo siguiente:

  • Limitar el número de comentarios con elementos de acción en el código convertido.

    En Añadir comentarios en el código convertido para los elementos de acción de la gravedad seleccionada o superior, elija la gravedad de los elementos de acción. AWS SCT añade comentarios en el código convertido para los elementos de acción de la gravedad seleccionada o superior.

    Por ejemplo, para minimizar el número de comentarios en el código convertido, seleccione Solo errores. Para incluir comentarios para todos los elementos de acción del código convertido, seleccione Todos los mensajes.

  • Para establecer el número máximo de tablas que AWS SCT se pueden aplicar al clúster de Amazon Redshift de destino.

    En El número máximo de tablas para el clúster de Amazon Redshift de destino, elija el número de tablas que se AWS SCT pueden aplicar a su clúster de Amazon Redshift.

    Amazon Redshift tiene cuotas que limitan las tablas de uso para los distintos tipos de nodos de clúster. Si elige Auto, AWS SCT determina el número de tablas que se van a aplicar al clúster de Amazon Redshift de destino en función del tipo de nodo. Si lo desea, elija el valor manualmente. Para obtener más información, consulte Cuotas y límites de Amazon Redshift en la Guía de administración de Amazon Redshift.

    AWS SCT convierte todas las tablas de origen, incluso si son más de las que puede almacenar el clúster de Amazon Redshift. AWS SCT almacena el código convertido en su proyecto y no lo aplica a la base de datos de destino. Si alcanza la cuota de clústeres de Amazon Redshift para las tablas al aplicar el código convertido, AWS SCT mostrará un mensaje de advertencia. Además, AWS SCT aplica tablas al clúster de Amazon Redshift de destino hasta que el número de tablas alcance el límite.

  • Aplicar compresión a las columnas de la tabla de Amazon Redshift. Para ello, seleccione Usar codificación de compresión.

    AWS SCT asigna automáticamente la codificación de compresión a las columnas mediante el algoritmo Amazon Redshift predeterminado. Para obtener más información, consulte Codificaciones de compresión en la Guía para desarrolladores de bases de datos de Amazon Redshift.

    De forma predeterminada, Amazon Redshift no aplica compresión a las columnas definidas como claves de clasificación y distribución. Puede cambiar este comportamiento y aplicar compresión a estas columnas. Para ello, seleccione Usar codificación de compresión para KEY las columnas. Puede seleccionar esta opción solo si selecciona la opción Usar codificación de compresión.

Configuración de optimización de la conversión de Netezza a Amazon Redshift

Para editar la configuración de optimización de conversiones de Netezza a Amazon Redshift, seleccione Configuración AWS SCT en y, a continuación, elija Configuración de conversión. En la lista superior, elija Netezza y, a continuación, Netezza — Amazon Redshift. En el panel izquierdo, elija Estrategias de optimización. AWS SCT muestra la configuración de optimización de conversiones para la conversión de Netezza a Amazon Redshift.

La configuración AWS SCT de optimización de conversiones de Netezza a Amazon Redshift incluye opciones para lo siguiente:

  • Trabajar con optimización automática de tablas. Para ello, seleccione Utilizar el ajuste automático de tablas de Amazon Redshift.

    La optimización automática de tablas es una capacidad de autoajuste presente en Amazon Redshift que optimiza automáticamente el diseño de tablas. Para obtener más información, consulte Trabajo con optimización automática de tablas en la Guía para desarrolladores de bases de datos de Amazon Redshift.

    Para confiar únicamente en la optimización automática de las tablas, elija Ninguna en Estrategia inicial de selección de claves.

  • Elegir las claves de clasificación y distribución según su estrategia.

    Puede elegir las claves de clasificación y distribución utilizando metadatos de Amazon Redshift, información estadística o ambas opciones. En estrategia inicial de selección de claves, en la pestaña Estrategias de optimización, elija una de las siguientes opciones:

    • Utilizar metadatos e ignorar la información estadística

    • Ignorar los metadatos, utilizar información estadística

    • Utilizar metadatos e información estadística

    En función de la opción que elija, puede seleccionar estrategias de optimización. A continuación, introduzca el valor (0—100) para cada estrategia. Estos valores definen la ponderación de cada estrategia. Con estos valores de ponderación, AWS SCT define cómo influye cada regla en la elección de las claves de distribución y clasificación. Los valores predeterminados se basan en las prácticas recomendadas de AWS migración.

    Puede definir el tamaño de las tablas pequeñas para la estrategia Buscar tablas pequeñas. En Recuento mínimo de filas de la tabla y Recuento máximo de filas de la tabla, introduzca el número mínimo y máximo de filas de una tabla para definirla como una tabla pequeña. AWS SCT aplica el estilo ALL de distribución a las tablas pequeñas. En este caso, se distribuye una copia de toda la tabla a cada nodo.

  • Configurar los detalles de la estrategia.

    Además de definir la ponderación de cada estrategia de optimización, puede configurar los ajustes de optimización. Para ello, elija Optimización de la conversión.

    • En Límite de columnas de clave de clasificación, introduzca el número máximo de columnas en la clave de clasificación.

    • Para el valor de umbral asimétrico, introduzca el porcentaje (0—100) de un valor asimétrico para una columna. AWS SCT excluye de la lista de candidatos a la clave de distribución las columnas con un valor de sesgo superior al umbral. AWS SCT define el valor asimétrico de una columna como la relación porcentual entre el número de apariciones del valor más común y el número total de registros.

    • En Consultas N principales de la tabla del historial de consultas, introduzca el número (1–100) de las consultas que se van a analizar con más frecuencia.

    • En Seleccionar usuario de estadísticas, elija el usuario de la base de datos cuyas estadísticas de consulta desee analizar.

    Además, en la pestaña Estrategias de optimización, puede definir el tamaño de las tablas pequeñas para la estrategia Buscar tablas pequeñas. En Recuento mínimo de filas de la tabla y Recuento máximo de filas de la tabla, introduzca el número mínimo y máximo de filas de una tabla para considerarla una tabla pequeña. AWS SCT aplica el estilo ALL de distribución a las tablas pequeñas. En este caso, se distribuye una copia de toda la tabla a cada nodo.