Genere información sobre z/OS datos de Db2 mediante AWS Mainframe Modernization Amazon Q en Quick Sight - Recomendaciones de AWS

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.

Genere información sobre z/OS datos de Db2 mediante AWS Mainframe Modernization Amazon Q en Quick Sight

Shubham Roy, Roshna Razack y Santosh Kumar Singh, Amazon Web Services

Resumen

Nota: AWS Mainframe Modernization El servicio (experiencia de entorno de ejecución gestionado) ya no está abierto a nuevos clientes. Para obtener funciones similares a las AWS Mainframe Modernization de Service (experiencia en entornos de ejecución gestionados), explore AWS Mainframe Modernization Service (experiencia autogestionada). Los clientes existentes pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulte Cambio en la disponibilidad de AWS Mainframe Modernization.

Si su organización aloja datos críticos para la empresa en un entorno de mainframe IBM Db2, obtener información a partir de esos datos es fundamental para impulsar el crecimiento y la innovación. Al desbloquear los datos del mainframe, puede crear inteligencia empresarial más rápida, segura y escalable para acelerar la toma de decisiones, el crecimiento y la innovación basados en los datos en la nube de Amazon Web Services (AWS).

Este patrón presenta una solución para generar información empresarial y crear narrativas compartibles a partir de datos de mainframe en IBM Db2 for tables. z/OS Los cambios en los datos del mainframe se transmiten al tema de Amazon Managed Streaming para Apache Kafka (Amazon MSK) mediante la replicación de datos de AWS Mainframe Modernization con Precisely. Mediante la ingesta de transmisión de Amazon Redshift, los datos de los temas de Amazon MSK se almacenan en tablas de almacenes de datos de Amazon Redshift sin servidor para su análisis en Amazon QuickSight.

Una vez que los datos estén disponibles en QuickSight, puede utilizar las peticiones en lenguaje natural con Amazon Q en QuickSight para crear resúmenes de los datos, formular preguntas y generar historias basadas en datos. No tiene que escribir consultas SQL ni aprender una herramienta de inteligencia empresarial (BI).

Contexto empresarial

Este patrón presenta una solución para casos de uso de análisis de datos e información de datos de mainframe. Con el patrón, puede crear un panel visual para los datos de su empresa. Para demostrar la solución, este patrón utiliza una empresa de atención médica que ofrece planes médicos, dentales y oftalmológicos a sus miembros en los EE. UU. En este ejemplo, la información demográfica y del plan de los miembros se almacena en las tablas de datos de IBM Db2 for. z/OS El panel visual muestra lo siguiente:

  • Distribución de miembros por región

  • Distribución de miembros por género

  • Distribución de miembros por edad

  • Distribución de miembros por tipo de plan

  • Miembros que no han completado la inmunización preventiva

Para ver ejemplos de la distribución de los miembros por región y de los miembros que no han completado la inmunización preventiva, consulte la sección de información adicional.

Después de crear el panel, se genera una historia basada en datos que explica la información del análisis anterior. Las historias basadas en datos proporcionan recomendaciones para aumentar el número de miembros que han completado la inmunización preventiva.

Requisitos previos y limitaciones

Requisitos previos 

  • Un activo Cuenta de AWS. Esta solución se creó y probó en Amazon Linux 2 en Amazon Elastic Compute Cloud (Amazon EC2).

  • Una nube privada virtual (VPC) con una subred a la que puede acceder el sistema de su mainframe.

  • Una base de datos de mainframe con datos empresariales. Para ver los datos de ejemplo que se utilizan para crear y probar esta solución, consulte la sección de archivos adjuntos.

  • La captura de datos de cambios (CDC) está habilitada en las z/OS tablas de Db2. Para habilitar la CDC en Db2 z/OS, consulte la documentación de IBM.

  • Precisamente Connect CDC z/OS se instala en el z/OS sistema que aloja las bases de datos de origen. La z/OS imagen CDC for de Precision Connect se proporciona como un archivo zip dentro de la imagen Amazon Machine Image AWS Mainframe Modernization (AMI) de Data Replication for IBM z/OS. Para instalar Precily Connect CDC for z/OS en el mainframe, consulte la documentación de instalación de Precision.

Limitaciones

  • Los datos de Db2 de su mainframe deben estar en un tipo de datos compatible con Precisely Connect CDC. Para obtener una lista de los tipos de datos compatibles, consulte la documentación de Precisely Connect CDC.

  • Los datos de Amazon MSK deben estar en un tipo de datos compatible con Amazon Redshift. Para obtener una lista de los tipos de datos compatibles, consulte la documentación de Amazon Redshift.

  • Amazon Redshift tiene diferentes comportamientos y límites de tamaño para los distintos tipos de datos. Para obtener más información, consulte la documentación de Amazon Redshift.

  • Los datos casi en tiempo real de QuickSight dependen del intervalo de actualización establecido para la base de datos de Amazon Redshift.

  • Algunas Servicios de AWS no están disponibles en todas Regiones de AWS. Para obtener información sobre la disponibilidad en regiones, consulte Servicios de AWS by Region. Amazon Q en QuickSight no está disponible actualmente en todas las regiones que admiten QuickSight. Para ver los puntos de conexión específicos, consulte la página Service endpoints and quotas y elija el enlace del servicio.

Versiones de producto

  • AWS Mainframe Modernization Replicación de datos con la versión 4.1.44 de Precision

  • Python, versión 3.6 o posterior

  • Apache Kafka versión 3.5.1

Arquitectura

Arquitectura de destino

El siguiente diagrama muestra una arquitectura para generar información empresarial a partir de datos del mainframe mediante la replicación de datos de AWS Mainframe Modernization con Precisely y Amazon Q en QuickSight.

Proceso de siete pasos desde el z/OS mainframe hasta Amazon. QuickSight

En el diagrama, se muestra el siguiente flujo de trabajo:

  1. El agente de lectura de registro de Precisely lee los datos de los registros de Db2 y los escribe en un almacenamiento transitorio de un sistema de archivos OMVS del mainframe.

  2. El agente publicador lee los registros de Db2 sin procesar del almacenamiento transitorio.

  3. El daemon del controlador en las instalaciones autentica, autoriza, supervisa y administra las operaciones.

  4. El Apply Agent se implementa en Amazon EC2 mediante la AMI preconfigurada. Se conecta con el agente publicador a través del daemon del controlador mediante TCP/IP. El agente de aplicación envía los datos a Amazon MSK mediante varios trabajadores para lograr un alto rendimiento.

  5. Los trabajadores escriben los datos en el tema de Amazon MSK en formato JSON. Como objetivo intermedio para los mensajes replicados, Amazon MSK ofrece capacidades de conmutación por error automatizadas y de alta disponibilidad.

  6. La ingesta de transmisión de Amazon Redshift proporciona una ingesta de datos de alta velocidad y baja latencia de Amazon MSK a una base de datos de Amazon Redshift sin servidor. Un procedimiento almacenado en Amazon Redshift realiza la reconciliación de los datos de cambios (insert/update/deletes) del mainframe en tablas de Amazon Redshift. Estas tablas de Amazon Redshift sirven como origen de análisis de datos para QuickSight.

  7. Los usuarios acceden a los datos en QuickSight para obtener análisis e información. Puede usar Amazon Q en QuickSight para interactuar con los datos mediante peticiones en lenguaje natural.

Tools (Herramientas)

Servicios de AWS

  • Amazon Elastic Compute Cloud (Amazon EC2) proporciona una capacidad informática escalable en el Nube de AWS. Puede iniciar tantos servidores virtuales como necesite y escalarlos o reducirlos horizontalmente con rapidez.

  • AWS Key Management Service (AWS KMS) le ayuda a crear y controlar claves criptográficas para proteger sus datos.

  • Amazon Managed Streaming para Apache Kafka (Amazon MSK) es un servicio completamente administrado que le permite crear y ejecutar aplicaciones que utilizan Apache Kafka para procesar datos de streaming.

  • Amazon QuickSight es un servicio de inteligencia empresarial (BI) a escala de la nube que lo ayuda a visualizar, analizar y generar informes de sus datos en un único panel. Este patrón utiliza las capacidades de BI generativa de Amazon Q en QuickSight.

  • Amazon Redshift sin servidor es una opción sin servidor de Amazon Redshift que hace que sea más eficiente ejecutar y escalar los análisis en cuestión de segundos sin necesidad de configurar y administrar la infraestructura del almacén de datos.

  • AWS Secrets Manager lo ayuda a reemplazar las credenciales codificadas en su código, incluidas contraseñas, con una llamada a la API de Secrets Manager para recuperar el secreto mediante programación.

Otras herramientas

  • Precisely Connect CDC recopila e integra datos de sistemas heredados en plataformas de datos y en la nube.

Repositorio de código

El código de este patrón está disponible en el repositorio GitHub Mainframe_ DataInsights _change_data_reconciliation. El código es un procedimiento almacenado en Amazon Redshift. Este procedimiento almacenado concilia los cambios en los datos del mainframe (inserciones, actualizaciones y eliminaciones) de Amazon MSK en las tablas de Amazon Redshift. Estas tablas de Amazon Redshift sirven como origen de análisis de datos para QuickSight.

Prácticas recomendadas

Epics

TareaDescripciónHabilidades requeridas

Configure un grupo de seguridad.

Para conectarse al daemon del controlador y al clúster de Amazon MSK, cree un grupo de seguridad para la EC2 instancia. Agregue las siguientes reglas de entrada y salida:

  • Regla de entrada 1:

    • En Tipo, elija TCP personalizada.

    • En Protocol, seleccione TCP.

    • En Rango de puertos, elija 2626 (puerto predeterminado para el daemon del controlador de Precisely) o el número de puerto del daemon del controlador que se ejecuta en el mainframe.

    • En Origen, elija el bloque de CIDR.

  • Regla de entrada 2:

    • En Type (Tipo), elija Custom TCP (TCP personalizada).

    • En Protocolo, elija SMH.

    • En Rango de puertos, elija 22.

    • En Origen, elija la dirección IP o la lista de prefijos.

  • Regla de entrada 3:

    • En Type (Tipo), elija Custom TCP (TCP personalizada).

    • En Protocol, seleccione TCP.

    • En Rango de puertos, elija 9092-9098.

    • En Origen, elija Bloque de CIDR.

  • Regla de salida 1:

    • En Type (Tipo), elija Custom TCP (TCP personalizada).

    • En Protocol, seleccione TCP.

    • En Rango de puertos, elija 9092-9098.

    • En Origen, elija Bloque de CIDR.

  • Regla de salida 2:

    • En Type (Tipo), elija Custom TCP (TCP personalizada).

    • En Protocol, seleccione TCP.

    • En Rango de puertos, elija 2626 (puerto predeterminado para el daemon del controlador de Precisely) o el número de puerto del daemon del controlador que se ejecuta en el mainframe.

    • En Origen, elija Bloque de CIDR.

Anote el nombre del grupo de seguridad. Deberá hacer referencia al nombre cuando lance la EC2 instancia y configure el clúster de Amazon MSK.

DevOps ingeniero, AWS DevOps

Cree una política de IAM y un rol de IAM.

  1. Para crear una política de IAM y un rol de IAM, siga las instrucciones de la documentación de AWS.

    Cree una política de IAM que conceda acceso para crear temas en el clúster de Amazon MSK y enviar datos a esos temas.

  2. Después de crear el rol de IAM, asocie la política a él. Anote el nombre del rol de IAM. Esta función se utilizará como perfil de la instancia de IAM al lanzar la EC2 instancia.

DevOps ingeniero, administrador de sistemas de AWS

Aprovisione una EC2 instancia.

Para aprovisionar una EC2 instancia para ejecutar Precily CDC y conectarse a Amazon MSK, haga lo siguiente:

  1. Inicie sesión y suscríbase a AWS Mainframe Modernization ‒ Data Replication for IBM z/OS. AWS Marketplace

  2. Seleccione la AMI de las suscripciones administradas y elija Iniciar nueva instancia.

  3. Proporcione otros detalles de configuración, como el nombre de la instancia, el tipo de instancia, el par de claves, la VPC y las subredes. Para obtener más información, consulta la EC2 documentación de Amazon.

  4. En la lista desplegable, elija el grupo de seguridad que creó anteriormente.

  5. En Detalles avanzados, Perfil de instancia de IAM, debe seleccionar el rol que creó anteriormente.

  6. Seleccione Iniciar instancia.

Administrador DevOps e ingeniero de AWS
TareaDescripciónHabilidades requeridas

Cree el clúster de Amazon MSK.

Para crear un clúster de Amazon MSK, haga lo siguiente:

  1. Inicia sesión en Amazon MSK y navega hasta Amazon MSK. Consola de administración de AWS

  2. Elija Create cluster.

  3. Para el método de creación del clúster, elija Creación personalizada y, para el tipo de clúster, elija Aprovisionado.

  4. Especifique un nombre para el clúster.

  5. Actualice la configuración del clúster según sea necesario y mantenga los valores predeterminados para el resto de la configuración.

  6. Anote la <versión de Kafka>. La necesitará durante la configuración del cliente de Kafka.

  7. Elija Siguiente.

  8. Elija la misma VPC y las mismas subredes que utilizó para la EC2 instancia de Precily y elija el grupo de seguridad que creó anteriormente.

  9. En la sección Configuración de seguridad, habilite la autenticación basada en roles de IAM y SASL/SCRAM. Precisamente Connect CDC utiliza SASL/SCRAM (capa de autenticación y seguridad simple o mecanismo de respuesta a desafíos salados) y se necesita IAM para conectarse a Amazon Redshift.

  10. Elija Siguiente.

  11. Para revisarlos, elija Supervisión y Método de entrega de registros del agente.

  12. Seleccione Siguiente y, después, Crear el clúster.

Un clúster aprovisionado típico tarda hasta 15 minutos en crearse. Una vez creado el clúster, su estado cambia de Creando a Activo.

AWS DevOps, administrador de la nube

Configure la SASL/SCRAM autenticación.

Para configurar la SASL/SCRAM autenticación de un clúster de Amazon MSK, haga lo siguiente:

  1. Para configurar un secreto en Secrets Manager, siga las instrucciones de la documentación de AWS.

  2. Abra la consola de Amazon MSK y seleccione el clúster de Amazon MSK que creó anteriormente.

  3. Elija la pestaña Propiedades.

  4. Elija Asociar secretos, elija los secretos, seleccione la clave de secretos que creó y, a continuación, elija Asociar secretos.

    Verá un mensaje similar al siguiente que indica que la operación se ha realizado correctamente:

    Successfully associated 1 secret for cluster <chosen cluster name>

  5. Elija el nombre del clúster.

  6. En el resumen del clúster, elija Ver información del cliente.

  7. Anote la cadena de conexión del punto de conexión privado para el tipo de autenticación SASL/SCRAM.

Arquitecto de la nube

Cree el tema de Amazon MSK.

Para crear el tema de Amazon MSK, haga lo siguiente:

  1. Conéctese a la EC2 instancia que creó anteriormente e instale las actualizaciones más recientes ejecutando el siguiente comando:

    sudo yum update -y
  2. Para instalar la biblioteca de Kafka y Java, ejecute el siguiente comando:

    sudo yum install -y java-11 librdkafka librdkafka-devel
  3. Para crear una carpeta con el nombre kafka en /home/ec2-user, navegue hasta esa carpeta y ejecute el comando siguiente:

    mkdir kafka;cd kafka
  4. Descargue la biblioteca del cliente de kafka en la carpeta kafka y sustituya <YOUR MSK VERSION> por la versión de Kafka que indicó durante la creación del clúster de Amazon MSK:

    wget https://archive.apache.org/dist/kafka//kafka_2.13-<YOUR MSK VERSION>.tgz
  5. Para extraer el archivo descargado, ejecute el comando siguiente y sustituya YOUR MSK VERSION>:

    tar -xzf kafka_2.13-<YOUR MSK VERSION>.tgz
  6. Para ir al directorio kafka libs y descargar el archivo Java Archive (JAR) de autenticación de IAM de Java, ejecute los siguientes comandos y sustituya <YOUR MSK VERSION>:

    cd kafka_2.13-<YOUR MSK VERSION>/libs wget https://github.com/aws/aws-msk-iam-auth/releases/download/v1.1.1/aws-msk-iam-auth-1.1.1-all.jarkafka
  7. Para ir al directorio bin de Kafka y crear el archivo client.properties, ejecute los siguientes comandos:

    cd /home/ec2-user/kafka/kafka_2.13-<YOUR MSK VERSION>/bin cat >client.properties
  8. Actualice el archivo client.properties con el siguiente contenido:

    security.protocol=SASL_SSL sasl.mechanism=AWS_MSK_IAM sasl.jaas.config=software.amazon.msk.auth.iam.IAMLoginModule required; sasl.client.callback.handler.class=software.amazon.msk.auth.iam.IAMClientCallbackHandler
  9. Para crear un tema de Kafka, vaya a la papelera de Kafka y ejecute el siguiente comando y, a continuación, sustituya <kafka broker> por el punto de conexión privado del servidor de arranque de IAM que indicó durante la creación del clúster de Amazon MSK:

    ./kafka-topics.sh --bootstrap-server <kafka broker> --command-config client.properties --create --replication-factor 3 —partitions 6 --topic <topic name>

  10. Cuando aparezca el mensaje Created topic <topic name>, anote el nombre del tema.

Administrador de la nube
TareaDescripciónHabilidades requeridas

Configure los scripts de Precisely para replicar los cambios en los datos.

Para configurar los scripts de Precisely Connect CDC para replicar los datos modificados del mainframe al tema de Amazon MSK, haga lo siguiente:

  1. Para crear una carpeta llamada precisely, navegue hasta esa carpeta y ejecute el comando siguiente:

    mkdir /home/ec2-user/precisely;cd /home/ec2-user/precisely
  2. Para crear dos carpetas dentro de precisely llamadas scripts y ddls, y a continuación, cambiarlas a la carpeta scripts, ejecute el siguiente comando:

    mkdir scripts;mkdir ddls;cd scripts
  3. Para crear un archivo sqdata_kafka_producer.conf en la carpeta scripts, ejecute el siguiente comando:

    cat >sqdata_kafka_producer.conf
  4. Actualice el archivo sqdata_kafka_producer.conf con el siguiente contenido:

    builtin.features=SASL_SCRAM security.protocol=SASL_SSL sasl.mechanism=SCRAM-SHA-512 sasl.username=<User Name> sasl.password=<Password> metadata.broker.list=<SASL/SCRAM Bootstrap servers>
    nota

    Actualice <SASL/SCRAM Bootstrap servers> con la lista de SASL/SCRAM corredores de Amazon MSK que configuró previamente. Actualice <User Name> y <Password> con el nombre de usuario y la contraseña que configuró anteriormente en Secrets Manager.

  5. Cree un archivo script.sqd en la carpeta scripts.

    cat >script.sqd

    El motor de aplicación usa script.sqd para procesar los datos de origen y replicarlos en el destino. Para un ejemplo de script del motor de aplicación, consulte la sección Información adicional.

  6. Para cambiar a la carpeta ddls y crear un archivo .ddl para cada tabla de Db2, ejecute los siguientes comandos:

    cd /home/ec2-user/precisely/ddls cat >mem_details.ddl cat >mem_plans.ddl

Para archivos .ddl de ejemplo, consulte la sección Información adicional.

Desarrollador de aplicaciones, arquitecto de la nube

Genere la clave ACL de red.

Para generar la clave de lista de control de acceso de la red (ACL de la red), haga lo siguiente:

  1. Para exportar la ruta de instalación de sqdata, ejecute el siguiente comando:

    export PATH=$PATH:/usr/sbin:/opt/precisely/di/sqdata/bin
  2. Para cambiar al directorio /home/ec2-user y generar la clave de ACL de la red, ejecute los siguientes comandos:

    cd /home/ec2-user sqdutil keygen --force

    Una vez generadas las claves pública y privada, aparece el siguiente mensaje:

    SQDUT04I Generating a private key in file /home/ec2-user/.nacl/id_nacl SQDC017I sqdutil(pid=27344) terminated successfully
  3. Anote la clave pública generada que se guarda en la carpeta .nacl.

Arquitecto de nube, AWS DevOps
TareaDescripciónHabilidades requeridas

Configure los valores predeterminados en la pantalla del ISPF.

Para configurar los ajustes predeterminados en el Interactive System Productivity Facility (ISPF), siga las instrucciones de la documentación de Precisely.

Administrador del sistema de mainframe

Configure el daemon del controlador.

Para configurar el daemon del controlador, haga lo siguiente:

  1. En la pantalla del menú principal de SQData z/OS, elija la opción 2.

  2. En la pantalla Añadir un daemon a la lista, en el campo Nombre del daemon, introduzca un nombre para el daemon y, a continuación, pulse Intro.

Administrador del sistema de mainframe

Configure el publicador.

Para configurar el publicador, haga lo siguiente:

  1. En la pantalla del menú principal de SQData z/OS, elija la opción 3. Esto le llevará a la pantalla de resumen de la captura o del publicador.

  2. Seleccione la opción para añadir un archivo CAB. Esto le llevará a la pantalla Añadir un archivo CAB a la lista.

  3. En el campo Nombre, escriba el nombre del archivo CAB. Para Db2, introduzca el tipo como D.

  4. Pulse Intro. Esto le llevará a la pantalla Crear un nuevo archivo CAB de captura de Db2.

  5. En el campo zFS Dir, especifique el punto de montaje del almacenamiento.

  6. Pulse intro para guardar y continuar.

Administrador del sistema de mainframe

Actualice el archivo de configuración del daemon.

Para actualizar los detalles del publicador en el archivo de configuración del daemon del controlador, haga lo siguiente:

  1. En la pantalla del menú principal de SQData z/OS, elija la opción 2.

  2. Introduzca S cerca del daemon que ha creado para ver los detalles del daemon.

  3. Introduzca 1 y, a continuación, pulse Intro para editar el archivo de los agentes.

  4. Añada los detalles de su archivo CAB. El siguiente ejemplo muestra los detalles de un archivo CAB denominado DB2ZTOMSK. Utilice su ID de usuario de mainframe en lugar de <userid>.

    ÝDB2ZTOMSK¨ type=capture cab=/u/<userid>/sqdata/DB2ZTOMSK.cab
  5. Pulse F3.

  6. Introduzca 2 para editar el archivo ACL. Agregue userid al archivo de configuración acl como se muestra en el siguiente ejemplo:

    Ýacls¨ prod=admin,<userid>
  7. Pulse F3 para guardar y salir.

Administrador del sistema de mainframe

Cree el trabajo para iniciar el daemon del controlador.

Para crear el trabajo, haga lo siguiente:

  1. En Opciones, introduzca G.

  2. Introduzca la tarjeta de trabajo, las bibliotecas de trabajos y procesos y los detalles de la biblioteca de Db2 load.

  3. Introduzca los detalles del archivo ACL de la red e introduzca la opción 2 para generar el archivo de lenguaje de control de tareas (JCL) en la biblioteca de trabajos especificada.

Administrador del sistema de mainframe

Genere el archivo JCL del publicador de capturas.

Para generar el archivo JCL del publicador de capturas, haga lo siguiente:

  1. En la pantalla del menú principal de SQData z/OS, elija la opción 3. Esto le llevará a la pantalla de resumen de la captura o del publicador.

  2. Introduzca S junto al archivo CAB para seleccionarlo. Esto le llevará a la pantalla de detalles de Db2 Capture/Publisher .

  3. En Opciones, introduzca G en las opciones para generar el trabajo capture/publisher.

  4. Introduzca la tarjeta de trabajo, las bibliotecas de procedimiento y los detalles de la biblioteca de carga de Db2.

  5. Para crear el trabajo, elija la opción 4. El trabajo se crea en la biblioteca de trabajos especificada en la biblioteca de trabajos.

Administrador del sistema de mainframe

Compruebe y actualice las CDC.

  1. Para comprobar el indicador DATACAPTURE de la tabla de Db2, ejecute la siguiente consulta y cambie <table name> por el nombre de la tabla de Db2:

    SELECT DATACAPTURE FROM SYSIBM.SYSTABLES WHERE NAME='<table name>';

    Confirme que el resultado muestre DATACAPTURE como Y.

  2. Si DATACAPTURE no es Y, ejecute la siguiente consulta para habilitar la CDC en la tabla de Db2, cambiando <table name> por el nombre de la tabla de Db2:

    ALTER TABLE <table name> DATA CAPTURE CHANGES;
Administrador del sistema de mainframe

Envíe los archivos JCL.

Envíe los siguientes archivos JCL que ha configurado en los pasos anteriores:

  • Archivo JCL para iniciar el daemon del controlador

  • Archivo JCL para iniciar la captura y publicación

Tras enviar los archivos JCL, puede iniciar el motor de aplicación en Precily en la EC2 instancia.

Administrador del sistema de mainframe
TareaDescripciónHabilidades requeridas

Inicie el motor de aplicación y valide la CDC.

Para iniciar el motor de aplicación en la EC2 instancia y validar el CDC, haga lo siguiente:

  1. Para conectarse a la EC2 instancia, siga las instrucciones de la AWS documentación.

  2. Cambie al directorio que contiene el archivo script.sqd:

    cd /home/ec2-user/precisely/scripts
  3. Para iniciar el motor de aplicación, ejecute el siguiente comando sqdeng de inicio:

    sqdeng -s script.sqd --identity=/home/ec2-user/.nacl/id_nacl

    El motor de aplicación empezará a esperar las actualizaciones del origen del mainframe.

  4. Para probar la CDC, inserte o actualice algunos registros en la tabla de Db2.

  5. Compruebe que el registro del motor de aplicación muestre el número de registros capturados y escritos en el destino.

Arquitecto de la nube, desarrollador de aplicaciones

Valide los registros del tema de Amazon MSK.

Para leer el mensaje del tema de Kafka, haga lo siguiente:

  1. Para cambiar al bin directorio de la ruta de instalación del cliente Kafka de la EC2 instancia, ejecuta el siguiente comando y <Kafka version> sustitúyelo por tu versión:

    cd /home/ec2-user/kafka/kafka_2.13-<Kafka version>/bin
  2. Para validar las CDC de Db2 escritas como mensajes en el tema de Kafka, ejecute el siguiente comando y sustituya <kafka broker> y <Topic Name> por el tema que creó anteriormente:

    ./kafka-console-consumer.sh --bootstrap-server <kafka broker>:9098 --topic <Topic Name> --from-beginning --consumer.config client.properties

  3. Valide que los mensajes coincidan con el número de registros actualizados en la tabla de Db2.

Desarrollador de aplicaciones, arquitecto de la nube
TareaDescripciónHabilidades requeridas

Configure Amazon Redshift sin servidor.

Para crear un almacén de datos de Amazon Redshift sin servidor, siga las instrucciones de la documentación de AWS

En el panel de Amazon Redshift sin servidor, compruebe que el espacio de nombres y el grupo de trabajo se crearon y están disponibles. Para este patrón de ejemplo, el proceso puede tardar entre 2 y 5 minutos.

Ingeniero de datos

Configure el rol de IAM y la política de confianza necesarios para la ingesta de transmisión.

Para configurar la ingesta de transmisión de Amazon Redshift sin servidor desde Amazon MSK, haga lo siguiente:

  1. Cree una política de IAM para que Amazon Redshift pueda acceder a Amazon MSK.

    Si lo [region] sustituye Región de AWS por el de Amazon MSK, [account-id] por su Cuenta de AWS ID y [msk-cluster-name] por el nombre del clúster de Amazon MSK, ejecute el siguiente código:

    {"Version": "2012-10-17", "Statement": [{"Sid": "MSKIAMpolicy","Effect": "Allow","Action": ["kafka-cluster:ReadData","kafka-cluster:DescribeTopic","kafka-cluster:Connect"],"Resource": ["arn:aws:kafka:[region]:[account-id]:cluster/[msk-cluster-name]/*","arn:aws:kafka:[region]:[account-id]:topic/[msk-cluster-name]/*"]},{"Effect": "Allow","Action": ["kafka-cluster:AlterGroup","kafka-cluster:DescribeGroup"],"Resource": ["arn:aws:kafka:[region]:[account-id]:group/[msk-cluster-name]/*"]}]}

    Puede buscar el nombre del clúster y el nombre de recurso de Amazon (ARN) en la consola de Amazon MSK. En la consola, elija Resumen del clúster y, a continuación, ARN.

  2. Para crear un rol de IAM y adjuntar la política, siga las instrucciones de la documentación de AWS.

  3. Para adjuntar el rol de IAM al espacio de nombres de Amazon Redshift sin servidor, haga lo siguiente:

    1. Inicie sesión en la consola y abra la consola de Amazon Redshift en. https://console.aws.amazon.com/redshiftv2/

    2. Elija Serverless dashboard (Panel Sin servidor).

    3. Elija Espacio de nombres.

    4. Elija la pestaña Seguridad y cifrado.

    5. Elija Permiso y adjunte el rol de IAM que creó.

  4. En su grupo de seguridad Amazon Redshift sin servidor, cree una regla de entrada con los siguientes detalles:

    • En Type (Tipo), elija Custom TCP (TCP personalizada).

    • En Protocol, seleccione TCP.

    • En Rango de puertos, elija 9098, 9198.

    • En Origen, elija el grupo de seguridad de Amazon MSK.

  5. En su grupo de seguridad de Amazon MSK, cree una regla de entrada con los siguientes detalles:

    • En Type (Tipo), elija Custom TCP (TCP personalizada).

    • En Protocol, seleccione TCP.

    • En Rango de puertos, elija 9098, 9198.

    • En Origen, elija el grupo de seguridad de Amazon Redshift.

    Este patrón usa el puerto de autenticación de IAM para la configuración de Amazon Redshift y Amazon MSK. Para obtener más información, consulte la documentación de AWS (paso 2).

  6. Active el enrutamiento de VPC mejorado para el grupo de trabajo de Amazon Redshift sin servidor Para obtener más información, consulte la Documentación de AWS.

Ingeniero de datos

Conecte Amazon Redshift sin servidor a Amazon MSK.

Para conectarse al tema de Amazon MSK, cree un esquema externo en Amazon Redshift sin servidor. En el editor de consultas V2 de Amazon Redshift, ejecute el siguiente comando SQL y, a continuación, sustituya 'iam_role_arn' por el rol que creó anteriormente y 'MSK_cluster_arn por el ARN de su clúster.

CREATE EXTERNAL SCHEMA member_schema FROM MSK IAM_ROLE 'iam_role_arn' AUTHENTICATION iam URI 'MSK_cluster_arn';
Ingeniero de migraciones

Cree una vista materializada.

Para consumir los datos del tema de Amazon MSK en Amazon Redshift sin servidor, cree una vista materializada. En el editor de consultas V2 de Amazon Redshift, ejecute los siguientes comandos de SQL y sustituya <MSK_Topic_name> por el nombre del tema de Amazon MSK.

CREATE MATERIALIZED VIEW member_view AUTO REFRESH YES AS SELECT kafka_partition, kafka_offset, refresh_time, json_parse(kafka_value) AS Data FROM member_schema.<MSK_Topic_name> WHERE CAN_JSON_PARSE(kafka_value);
Ingeniero de migraciones

Cree tablas de destino en Amazon Redshift.

Las tablas de Amazon Redshift proporcionan la entrada para QuickSight. Este patrón utiliza las tablas member_dtls y member_plans, que coinciden con las tablas de Db2 de origen del mainframe.

Para crear las dos tablas en Amazon Redshift, ejecute los siguientes comandos de SQL en el editor de consultas V2 de Amazon Redshift:

-- Table 1: members_dtls CREATE TABLE members_dtls ( memberid INT ENCODE AZ64, member_name VARCHAR(100) ENCODE ZSTD, member_type VARCHAR(50) ENCODE ZSTD, age INT ENCODE AZ64, gender CHAR(1) ENCODE BYTEDICT, email VARCHAR(100) ENCODE ZSTD, region VARCHAR(50) ENCODE ZSTD ) DISTSTYLE AUTO; -- Table 2: member_plans CREATE TABLE member_plans ( memberid INT ENCODE AZ64, medical_plan CHAR(1) ENCODE BYTEDICT, dental_plan CHAR(1) ENCODE BYTEDICT, vision_plan CHAR(1) ENCODE BYTEDICT, preventive_immunization VARCHAR(50) ENCODE ZSTD ) DISTSTYLE AUTO;
Ingeniero de migraciones

Cree un procedimiento almacenado en Amazon Redshift.

Este patrón utiliza un procedimiento almacenado para sincronizar los datos de cambios (INSERT, UPDATE, DELETE) del mainframe de origen con la tabla de almacén de datos de Amazon Redshift de destino para su análisis en QuickSight.

Para crear el procedimiento almacenado en Amazon Redshift, utilice el editor de consultas v2 para ejecutar el código del procedimiento almacenado que se encuentra en el GitHub repositorio.

Ingeniero de migraciones

Lea la vista materializada de la transmisión y cárguela en las tablas de destino.

El procedimiento almacenado lee los cambios de datos de la vista materializada de transmisión y carga los cambios de datos en las tablas de destino. Para ejecutar el procedimiento almacenado, use el siguiente comando:

call SP_Members_Load();

Puede utilizar Amazon EventBridge para programar los trabajos en su almacén de datos de Amazon Redshift para llamar a este procedimiento almacenado en función de sus requisitos de latencia de datos. EventBridge ejecuta los trabajos a intervalos fijos. Para comprobar si la llamada anterior al procedimiento se ha completado, puede que necesite utilizar un mecanismo como una máquina de estado de AWS Step Functions. Para obtener más información, consulte los siguientes recursos:

Otra opción es utilizar el editor de consultas V2 de Amazon Redshift para programar la actualización. Para obtener más información, consulte Consultas programadas con el editor de consultas v2.

Ingeniero de migraciones
TareaDescripciónHabilidades requeridas

Configure QuickSight.

Para configurar QuickSight, siga las instrucciones de la documentación de AWS.

Ingeniero de migraciones

Configure una conexión segura entre QuickSight y Amazon Redshift.

Para configurar una conexión segura entre QuickSight y Amazon Redshift, haga lo siguiente:

  1. Para autorizar las conexiones de QuickSight a Amazon Redshift, abra la consola de Amazon Redshift y añada una regla de entrada al grupo de seguridad de Amazon Redshift. La regla debe permitir el tráfico al puerto 5439 (el puerto predeterminado de Redshift) desde el rango de CIDR en el que configuró QuickSight. Para ver una lista de las direcciones IP Regiones de AWS y sus direcciones IP, consulte Compatible con Quick Regiones de AWS Sight.

    En la consola de Amazon Redshift, elija Grupo de trabajo, Acceso a datos, Red y seguridad y habilite el Acceso público.

Ingeniero de migraciones

Cree un conjunto de datos para QuickSight.

Para crear un conjunto de datos para QuickSight desde Amazon Redshift, haga lo siguiente:

  1. En la consola de QuickSight, en el panel de navegación, elija Conjuntos de datos.

  2. En la página Conjuntos de datos, seleccione Nuevo conjunto de datos.

  3. Elija Conexión manual de Redshift.

  4. En la ventana Nuevo origen de datos de Redshift, introduzca la información de conexión:

    • En Nombre de origen de datos, escriba un nombre para el origen de datos de Amazon Redshift.

    • En Servidor de base de datos, introduzca el punto de conexión del clúster de Amazon Redshift. Puede obtener el valor del punto de conexión en el campo Punto de conexión de la sección Información general del grupo de trabajo del clúster en el panel de Amazon Redshift sin servidor. La dirección del servidor es la primera parte del punto de conexión antes de los dos puntos, tal y como se muestra en el ejemplo siguiente:

      mfdata-insights.NNNNNNNNN.us-east-1.redshift-serverless.amazonaws.com:5439/dev
    • Para el puerto, introduzca 5439 (el puerto predeterminado para Amazon Redshift).

    • Introduzca el nombre de la base de datos (después de la barra del punto de conexión). En este caso, el nombre de la base de datos es dev.

    • En Nombre de usuario y Contraseña, introduzca el nombre de usuario y la contraseña de la base de datos de Amazon Redshift.

  5. Elija Validar conexión. Si se ejecuta correctamente, debería ver una marca de verificación verde que indica la validación. Si la validación falla, consulta la sección Solución de problemas.

  6. Elija Crear origen de datos.

Ingeniero de migraciones

Una el conjunto de datos.

Para crear análisis en QuickSight, combine las dos tablas; para ello, siga las instrucciones de la documentación de AWS.

En el panel Configuración de unión, elija Izquierda en Tipo de unión. En Cláusulas de unión, utilice memberid from member_plans = memberid from members_details.

Ingeniero de migraciones
TareaDescripciónHabilidades requeridas

Configure Amazon Q en QuickSight.

Para configurar la capacidad de BI generativa de Amazon Q in QuickSight, siga las instrucciones de la documentación de AWS.

Ingeniero de migraciones

Analice los datos del mainframe y cree un panel visual.

Para analizar y visualizar sus datos en QuickSight, haga lo siguiente:

  1. Para crear el análisis de datos del mainframe, siga las instrucciones de la documentación de AWS. En el conjunto de datos, elija el conjunto de datos que ha creado.

  2. En la página de análisis, elija Crear elemento visual.

  3. En la ventana Crear tema para el análisis, elija Actualizar tema existente.

  4. En la lista desplegable Seleccione un tema, elija el tema que creó anteriormente.

  5. Seleccione Vinculación de temas.

  6. Después de vincular el tema, elija Crear elemento visual para abrir la ventana Crear un elemento visual de Amazon Q.

  7. En la barra de peticiones, escriba sus preguntas de análisis. Los ejemplos de preguntas que se utilizan para este patrón son los siguientes:

    • Mostrar la distribución de miembros por región

    • Mostrar la distribución de miembros por edad

    • Mostrar la distribución de miembros por género

    • Mostrar la distribución de miembros por tipo de plan

    • Mostrar los miembros que no han completado la inmunización preventiva

    Después de introducir las preguntas, elija Crear. Amazon Q en QuickSight crea los elementos visuales.

  8. Para añadir los elementos visuales a su panel visual, elija AÑADIR AL ANÁLISIS.

Cuando termine, puede publicar el panel de control para compartirlo con otras personas de su organización. Para ver ejemplos, consulte el panel visual del mainframe en la sección de información adicional.

Ingeniero de migraciones
TareaDescripciónHabilidades requeridas

Cree una historia basada en datos.

Cree una historia basada en datos para explicar la información del análisis anterior y genere una recomendación para aumentar la inmunización preventiva de los miembros:

  1. Para crear la historia basada en datos, siga las instrucciones de la documentación de AWS.

  2. Para la petición de la historia basada en datos, utilice lo siguiente:

    Build a data story about Region with most numbers of members. Also show the member distribution by medical plan, vision plan, dental plan. Recommend how to motivate members to complete immunization. Include 4 points of supporting data for this pattern.

    También puede crear su propia petición para generar historias basadas en datos que le sirvan para obtener información empresarial adicional.

  3. Elija Añadir elementos visuales y añada los elementos visuales que sean relevantes para la historia basada en datos. Para este patrón, utilice los elementos visuales que creó anteriormente.

  4. Elija Compilar.

  5. Para ver un ejemplo de salida de una historia basada en datos, consulte Salida de una historia basada en datos en la sección de información adicional.

Ingeniero de migraciones

Vea la historia basada en datos generada.

Para ver la historia basada en datos generada, selecciónela en la página de Historias basadas en datos.

Ingeniero de migraciones

Edite una historia basada en datos generada.

Para cambiar el formato, el diseño o los elementos visuales de una historia basada en datos, siga las instrucciones de la documentación de AWS.

Ingeniero de migraciones

Comparta una historia basada en datos.

Para compartir una historia basada en datos, siga las instrucciones de la documentación de AWS.

Ingeniero de migraciones

Resolución de problemas

ProblemaSolución

Se ha producido el error Validate Connection al crear un conjunto de datos de QuickSight a Amazon Redshift.

  1. Confirme que el grupo de seguridad adjunto a la instancia de Amazon Redshift sin servidor permite el tráfico entrante desde el rango de direcciones IP asociado a la región en la que configuró QuickSight.

  2. Confirme que la VPC en la que se ha implementado Amazon Redshift sin servidor esté disponible públicamente.

  3. Confirme que utiliza el nombre de usuario y la contraseña correctos para Amazon Redshift. Puede restablecer el nombre de usuario y la contraseña en la consola de Amazon Redshift.

Al intentar iniciar el motor de aplicación en la EC2 instancia, aparece el siguiente error:

-bash: sqdeng: command not found

Para exportar la ruta de instalación de sqdata, ejecute el siguiente comando:

export PATH=$PATH:/usr/sbin:/opt/precisely/di/sqdata/bin

Al intentar iniciar el motor de aplicación, se produce uno de los siguientes errores de conexión:

  • SQDD018E Cannot connect to transfer socket(rc==0x18468). Agent:<Agent Name > Socket:/u/./sqdata/.DB2ZTOMSK.cab.data

  • SQDUR06E Error opening url cdc://<VPC end point name>:2626/DB2ZTOMSK/DB2ZTOMSK : errno:1128 (Unknown error 1128)

Compruebe el spool del mainframe para asegurarse de que los trabajos del daemon del controlador se estén ejecutando.

Recursos relacionados

Información adicional

Ejemplo: archivos .ddl

members_details.ddl

CREATE TABLE MEMBER_DTLS ( memberid INTEGER NOT NULL, member_name VARCHAR(50), member_type VARCHAR(20), age INTEGER, gender CHAR(1), email VARCHAR(100), region VARCHAR(20) );

member_plans.ddl

CREATE TABLE MEMBER_PLANS ( memberid INTEGER NOT NULL, medical_plan CHAR(1), dental_plan CHAR(1), vision_plan CHAR(1), preventive_immunization VARCHAR(20) );

Ejemplo de archivo .sqd

Sustituya <kafka topic name> por el nombre de su tema de Amazon MSK.

script.sqd

-- Name: DB2ZTOMSK: DB2z To MSK JOBNAME DB2ZTOMSK;REPORT EVERY 1;OPTIONS CDCOP('I','U','D');-- Source Descriptions JOBNAME DB2ZTOMSK; REPORT EVERY 1; OPTIONS CDCOP('I','U','D'); -- Source Descriptions BEGIN GROUP DB2_SOURCE; DESCRIPTION DB2SQL /var/precisely/di/sqdata/apply/DB2ZTOMSK/ddl/mem_details.ddl AS MEMBER_DTLS; DESCRIPTION DB2SQL /var/precisely/di/sqdata/apply/DB2ZTOMSK/ddl/mem_plans.ddl AS MEMBER_PLANS; END GROUP; -- Source Datastore DATASTORE cdc://<zos_host_name>/DB2ZTOMSK/DB2ZTOMSK OF UTSCDC AS CDCIN DESCRIBED BY GROUP DB2_SOURCE ; -- Target Datastore(s) DATASTORE 'kafka:///<kafka topic name>/key' OF JSON AS TARGET DESCRIBED BY GROUP DB2_SOURCE; PROCESS INTO TARGET SELECT { REPLICATE(TARGET) } FROM CDCIN;

Panel visual de mainframe

Amazon Q creó el siguiente elemento visual de datos en QuickSight para la pregunta de análisis show member distribution by region.

Las regiones noreste y sudoeste tienen 8 miembros, la región sudoeste tiene 5 miembros y la región medio oeste tiene 4 miembros.

Amazon Q creó el siguiente elemento visual de datos en QuickSight para la pregunta show member distribution by Region who have not completed preventive immunization, in pie chart.

La región sudeste muestra 6, la región sudoeste muestra 5 y el medio oeste muestra 4.

Salida de una historia basada en datos

Las siguientes capturas de pantalla muestran secciones de la historia basada en datos creada por Amazon Q en QuickSight para la petición Build a data story about Region with most numbers of members. Also show the member distribution by age, member distribution by gender. Recommend how to motivate members to complete immunization. Include 4 points of supporting data for this pattern.

En la introducción, la historia basada en datos recomienda elegir la región con más miembros para obtener el mayor impacto de las iniciativas de inmunización.

Pantalla de introducción para un análisis basado en la geografía, la demografía y la edad de la base de miembros.

La historia basada en datos proporciona un análisis del número de miembros de las cuatro regiones. Las regiones noreste, sudoeste y sureste son las que tienen más miembros.

Las regiones noreste y sudoeste tienen 8 miembros, el sudeste tiene 6 miembros y el medio oeste tiene 4 miembros.

La historia basada en datos presenta un análisis de los miembros por edad.

Gráfico que muestra que la base de miembros se inclina hacia los adultos más jóvenes y de mediana edad.

La historia basada en datos se centra en las iniciativas de inmunización en el medio oeste.

Recomendación para una campaña de divulgación personal y desafíos regionales.
Continuación del análisis de la historia basada en datos, con los resultados y las conclusiones anticipados.

Conexiones

Para acceder al contenido adicional asociado a este documento, descomprima el archivo: attachment.zip