25
CDD MODULO CDD ORACLE Mayo 2012

CDD MODULO CDD ORACLE

  • Upload
    sheryl

  • View
    99

  • Download
    0

Embed Size (px)

DESCRIPTION

CDD MODULO CDD ORACLE. Mayo 2012. Temario. INDICE. Contexto General Definición de Ambiente Procedimiento de Ejecución Estructura Job Principal Job Principal 1 de 3 Integridad de Reservas Carga Tablas Criticas Reserva Carga Tabla RES (Reservas) Job Principal 2 de 3 - PowerPoint PPT Presentation

Citation preview

Page 1: CDD MODULO CDD ORACLE

CDDMODULO CDD

ORACLE

Mayo 2012

Page 2: CDD MODULO CDD ORACLE

1. Contexto General2. Definición de Ambiente3. Procedimiento de Ejecución4. Estructura Job Principal5. Job Principal 1 de 36. Integridad de Reservas7. Carga Tablas Criticas Reserva8. Carga Tabla RES (Reservas)9. Job Principal 2 de 310. Carga Tablas No Criticas Reserva 111. Carga Tablas No Criticas Reserva 2

12. Job Principal 3 de 313. Integridad Tabla Ticket (Tkt_Document)14. Carga Tabla Tkt_Dcument y Tablas no criticas

de Ticket15. Otras Funcionalidades16. Tablas de Control17. Check List de Diagnostico18. Anexo19. Preguntas

Temario

INDICE

Page 3: CDD MODULO CDD ORACLE

CDD (Carga Modelo CDD Oracle)

Proceso que permite cargar al modelo Oracle CDD, toda la información relacionada alas Reservas y Ticket del Pasajero desde los archivos Planos generados y enviados por GDS SABRESde Forma diaria, Este proceso validad tanto la consistencia y la estructura de la información entregada, como por ejemplo:

◦ No considerara (en el modelo final de carga) las reservas, que le falte información definida primordial para las Carga (Llaves)

◦ En algunos Casos, no considerara información que tenga inconsistencia con los tipos deDatos definido (si se espera un número no puede venir letras, etc.)

La idea de esta validaciones, es disponer a los otros proyecto como BPNR (Bajada PNR) de información consistente para sus procesos

Info.: Este Proceso esta asociado a distintos modos de carga que permitirán en casosexcepcionales, reprocesar, recargar la información para uno o mas periodos según se determine

Contexto General

Page 4: CDD MODULO CDD ORACLE

4

Contexto General

Tablas PadreTablas principales de Negocio que permiten mantener la consistencia de la información enviada enlos Archivos para Reserva (RES) para Ticket (Tkt_Document), la finalización incorrecta de esta etapa NO permite continuar con el proceso de Carga

Tablas CriticasConjunto de Tablas definidas por el usuario, con segunda prioridad de carga, con el finde disponbilizar los datos para otro proyectos), la finalización incorrecta de esta etapaNO permite continuar con el proceso de carga

Tablas No CriticasConjunto de Tablas definidas por el usuario, con Tercera prioridad de carga, la finalización incorrecta de esta etapa SI permite continuar con el proceso de carga

Archivos Done Archivo enviado por SABRE, que contiene información relacionada con las tablas y cantidad de registros

enviados para el proceso de carga diario.

Page 5: CDD MODULO CDD ORACLE

5

DATA STAGE 7.52 Solución implementada mediante Jobs ETL

BASE DATOSOracle 10g

PARTICIONES SOBRE LAS TABLASSe acuerda definir una solución con un solo modelo de datos, utilizando particiones para la performance. Se crearán 31 particiones de tipo LIST permitiendo manejar un solo día de carga por partición, permitiendo truncar solo las particiones necesarias. El atributo de carga es parte de la llave de las tablas utilizando índice global que se pueden dejar disponibles una vez truncado la tabla.

STORE PROCEDUREEl manejo del truncate para cada partición, se realizara paramétricamente, gatillado desde unjob que será capaz de capturar y controlar los resultados de errores del PL Oracle.

JOB CONTROL (Lenguaje de programación del los Job Server) Principalmente para orquestar la llamada de Job y la utilización de ODBC

ODBCSe utiliza ODBC principalmente para administrar las tabla de control en cada uno de los Procesos

Para desarrollar la solución se utilizó:

Contexto General

Page 6: CDD MODULO CDD ORACLE

Preparando el Ambiente de ejecución

Actualizar parámetro Servidor DatastagePara poder ejecutar dsjob es necesario poder actualizar siguiente parámetro en ambiente Unix donde reside servidor DataStage:cd `cat /.dshome`. ../dsenv ‘Deja disponible los parámetros de ambiente’

Creación ODBC (Oracle)

Nombre ODBC: ORA_PASS_CDDBase de datos: 57.228.166.91ServerOwner: EXCDDUsuario: SRVCDDPw: SRVCDD

Definición de Ambiente

Page 7: CDD MODULO CDD ORACLE

7

Estructura de Carpeta Unix

/dsapp/DSCDD/CNF Carpeta de archivos de configuración (DSParams, ListadoFeeds.cnf)

/dsapp/DSCDD/SHL Carpeta donde se encuentran las Shell para la ejecución del proyecto

/dsdata/DSCDD/DATCarpeta que tendrá todos los archivos de carga enviados por SABRE

/dsdata/DSCDD/HSHCarpeta donde se generaran los archivos HASH utilizados por elproceso

/dsdata/DSCDD/TMPCarpeta donde se generaran los archivos Temporales utilizados por el sistema

Definición de Ambiente

Page 8: CDD MODULO CDD ORACLE

8

Configuración: Validar limpieza de tabla de Control (CTR_CDD) Configuración de Parámetros de DSParams

Ejecución Shell:Nombre Shell: Ejecuta_DSCDD.sh / Ejecuta_DSCDD_OnDemand.shParámetros: FECHA = Fecha a procesar formato YYYYMMDD. ( Sólo se ingresa para proceso on-demand.

Proceso batch programado calcula internamente el valor de la fecha de proceso).SERVER = DNS o IP del servidor donde se encuentra el Job.USER = Usuario con permiso de ejecución del Job.PASSWORD = Password del usuario.PROYECTO = Nombre del Proyecto que contiene el Job.JOB = Nombre del Job a ejecutar.MODO = Modo de ejecución <NORMAL|RESET|VALIDATE>PATH_LOG = Path donde se encuentran los logs.PARAMETRO = Parámetro a insertar en el Job.WARN = Numero de Warning permitidos antes del Fatal Error. 0 es Ilimitado.DESTINATARIOS=Direcciones e-mail a quienes se le enviara la información correspondiente.(Para más de un destinatario se separa por coma.)

Procedimiento de Ejecución

Page 9: CDD MODULO CDD ORACLE

9

Procedimiento de Ejecución

Ejemplo de ejecución Programada (Control-M):

./Ejecuta_DSCDD.sh 57.228.129.28 dscdd dscdd DSCDD CDD_00_Ejecuta_All NORMAL/dsdata/DSCDD/LOG PS_FECHA_DE_ARCHIVOS_CDD 0 [email protected]

Ejemplo de ejecución On-Demand (Manual):

./Ejecuta_DSCDD_OnDemand.sh 20110214 57.228.129.28 dscdd dscdd DSCDDCDD_00_Ejecuta_All NORMAL /dsdata/DSCDD/LOG PS_FECHA_DE_ARCHIVOS_CDD [email protected]

La ejecuciones sólo se diferencian en que para el Proceso OnDemand sedebe ingresar la Fecha de Proceso (20110214) y en la programada se Calcula.

En los Ejemplo de ejecución, en ROJO esta identificado el Job que será ejecutado, en cadamodulo existe un Job principal, para CDD es CDD_00_Ejecuta_All

Ejecucion Norma y On-Demand En CDD existen dos Shell, una que gatilla los procesos programados (Ejecuta_DSCDD.sh) y otra que gatilla los proceso On-Demand (Ejecuta_DSCDD_OnDemand.sh)

Page 10: CDD MODULO CDD ORACLE

10

Estructura Job Principal

El Job principal gatillado por Control-M, será analizado en tres Parte

• Validación Base de Datos• Validación de Archivos• Integridad de las RESERVA• Carga Tablas criticas• Carga de Tabla RESERVA

• Carga Tablas no criticas 1• Carga Tablas no criticas 2

• Integridad de las Tickets• Carga Tablas de Ticket• Finalización del proceso

Page 11: CDD MODULO CDD ORACLE

11

Job Principal 1 de 3

CDD_00_Ejecuta_All (Parte 1 de 3)Sequence principal que gatilla el proceso que Carga los archivos enviados por SABRES, al ModeloCDD.

El proceso comienza enviado un Correo informando el inicio del proceso, Valida conectividad a la base de Dato (Oracle), valida si vienen informada todas las tablas involucradas en el proceso (.done), valida la Integridad de los datos de la Tabla Padre RES (Tabla de reservas) y Cargalas primeras Tabla Critica y la Taba RES

CDD_00_Carga_Tabla_Padre_Critica_JobControl CDD_00_Carga_Tablas_Criticas_JobControl CDD_00_Carga_Tablas_Criticas_JobControl_2

Page 12: CDD MODULO CDD ORACLE

12

Proceso que valida la integridad de las Reservas extraídas desde los Archivo de texto enviado por SABRES, dentro de las validaciones que se realizan se encuentran LARGO, TIPO, NULO, en caso de encontrar alguno de estos errores en los campos definidos como llaves para la Reserva, el registro quedara invalidado, si el error no pertenece a un campo definido como llave, el campo quedara corregido y el PNR quedara valido, y los PNR que no tengan ningún problema en su llave quedaran definidos como Reservas Limpias, todo error encontrado quedara Detalladamente registrado en las tablas de control de Errores, con el numero de registro nombre del campo y cantidad de errores entre otros.

Integridad de Reservas

Validación de la Tabla Padre RES (CDD_00_Carga_Tabla_Padre_Critica_JobControl)

Page 13: CDD MODULO CDD ORACLE

13

Sequence Carga Tabla Criticas (CDD_00_Carga_Tablas_Criticas_JobControl)

Carga Tablas Criticas Reserva

El sequence CDD_00_Carga_Tablas_Criticas_JobControl es el encargado de orquestar de forma “PARALELA” la carga de las tablas criticas, comienza con el llamado al Job Control (CDD_01_JobControl) para cada tabla, que validara si las cargas ya fueron realizada para no cargar nuevamente el archivo, creara los archivos de control, inicializara el proceso de carga en las tablas de control LAN y CORPORATIVA, llamara a los job de carga según sus parámetros, insertara los registro con errores en la Tabla de Error CDD y actualizara las tabla de control con el Status de la carga, a medida que termina el proceso de carga, se ejecutara las dependencia, que complementaran con información a las tablas de control con el status final del Job.

Page 14: CDD MODULO CDD ORACLE

14

Sequence Carga Tabla Criticas (CDD_00_Carga_Tablas_Criticas_JobControl_2)

El sequence CDD_00_Carga_Tablas_Criticas_JobControl_2 es el encargado de orquestar de forma “PARALELA” la carga de las tablas criticas, comienza con el llamado al Job Control (CDD_01_JobControl) para la tabla RES, que validara si la carga ya fue realizada para no cargar nuevamente el archivo, creara el archivo de control, inicializara el proceso de carga en las tablas de control LAN y CORPORATIVA, llamara al job de carga según sus parámetros, insertara los registro con errores en la Tabla de Error CDD y actualizara las tabla de control con el Status de la carga. Terminado el proceso de carga, se ejecuta las dependencia, que complementa con información a las tablas de control con el status final del Job.

Carga Tabla RES (Reservas)

Page 15: CDD MODULO CDD ORACLE

15

CDD_00_Ejecuta_All (Parte 2 de 3)Sequence principal que gatilla el proceso que Carga los archivos enviados por SABRES, al ModeloCDD (Oracle)

Continuando con el proceso de Carga, comenzamos la carga de las tablas no criticas, a la igual que las anteriores , se definieron sequencias que orquestaran el llamado a cada una de ellas, los sequences son:

CDD_00_Carga_Tablas_Res_No_Criticas_JobControl_1 CDD_00_Carga_Tablas_Res_No_Criticas_JobControl_2

Job Principal 2 de 3

Page 16: CDD MODULO CDD ORACLE

16

Sequence CDD_00_Carga_Tablas_Res_No_Criticas_JobControl_1 (Tablas no criticas)

El sequence CDD_00_Carga_Tablas_Res_No_Criticas_JobControl_1 es el encargado de orquestar de forma “PARALELA” la carga de las tablas NO criticas, comienza con el llamado al Job Control (CDD_01_JobControl) para cada tabla, que validara si las cargas ya fueron realizadas para no cargar nuevamente el archivo, creara los archivos de control, inicializara el proceso de carga en las tablas de control LAN y CORPORATIVA, llamara a los job de carga según sus parámetros, insertara los registro con errores en la Tabla de Error CDD y actualizara las tabla de control con el Status de la carga, a medida que termina el proceso de carga, se ejecutara las dependencia, que complementara con información a las tablas de control con el status final del Job.

Carga Tablas No Criticas Reserva 1

Page 17: CDD MODULO CDD ORACLE

1717

Sequence CDD_00_Carga_Tablas_Res_No_Criticas_JobControl_2 (Tablas no criticas)

El sequence CDD_00_Carga_Tablas_Res_No_Criticas_JobControl_2 es el encargado de orquestar de forma “PARALELA” la carga de las tablas NO criticas, comienza con el llamado al Job Control (CDD_01_JobControl) para cada tabla, que validara si las cargas ya fueron realizadas para no cargar nuevamente el archivo, creara los archivos de control, inicializara el proceso de carga en las tablas de control LAN y CORPORATIVA, llamara a los job de carga según sus parámetros, insertara los registro con errores en la Tabla de Error CDD y actualizara las tabla de control con el Status de la carga, a medida que termina el proceso de carga, se ejecutara las dependencia, que complementara con información a las tablas de control con el status final del Job.

Carga Tablas No Criticas Reserva 2

Page 18: CDD MODULO CDD ORACLE

18

CDD_00_Ejecuta_All (Parte 3 de 3) Tabla Padres y no Criticas de TicketSequence principal que gatilla el proceso que Carga los archivos enviados por SABRES, al ModeloCDD (Oracle)

Continuando con el proceso de Carga, comenzamos la carga de las tablas asociadas al los Ticket de las reserva, a la igual que las anteriores , se definieron secuencias que orquestaran el llamado a cada una de ellas, los sequences para Ticket son:

CDD_00_Carga_Tabla_Padre_Tkt CDD_00_Carga_Tablas_Tkt_No_Criticas_JobControl

Job Principal 3 de 3

Page 19: CDD MODULO CDD ORACLE

19

Validación de la tabla Tkt_Document CDD_00_Carga_Tabla_Padre_Tkt (Ticket)

Proceso que valida la integridad de los TICKET extraídas desde los Archivo de texto enviado por SABRES, dentro de las validaciones que se realizan se encuentran LARGO, TIPO, NULO, en caso de encontrar alguno de estos errores en los campos definidos como llaves para los Ticket, el registro quedara invalidado, si el error no pertenece a un campo definido como llave, el campo quedara corregido y el PNR quedara valido, y los PNR que no tengan ningún problema en su llave quedaran definidos como Ticket validos especificando el tipo de llave que se trate (UK, PK) todo error encontrado quedara Detalladamente registrado en las tablas de control de Errores, con el numero de registro nombre del campo y cantidad de errores entre otros.

Integridad Tabla Ticket (Tkt_Document)

Page 20: CDD MODULO CDD ORACLE

2020

Sequence CDD_00_Carga_Tablas_Tkt_No_Criticas_JobControl (Tablas no criticas)

El sequence CDD_00_Carga_Tablas_Tkt_No_Criticas_JobControl es el encargado de orquestar de forma “PARALELA” la carga de las tablas NO criticas, comienza con el llamado al Job Control (CDD_01_JobControl) para cada tabla, que validara si las cargas ya fueron realizadas para no cargar nuevamente el archivo, creara los archivos de control, inicializara el proceso de carga en las tablas de control LAN y CORPORATIVA, llamara a los job de carga según sus parámetros, insertara los registro con errores en la Tabla de Error CDD y actualizara las tabla de control con el Status de la carga, a medida que termina el proceso de carga, se ejecutara las dependencia, que complementara con información a las tablas de control con el status final del Job.

Carga Tabla Tkt_Dcument y Tablas no criticas de Ticket

Page 21: CDD MODULO CDD ORACLE

21

Otras Funcionalidades

La administración de Cada proceso tiene la capacidad de:

Reintentos: (Valor Paramétrico, default 3) de ejecuciones de Jobs una vez detectado la caída de alguno de ellos, si después de los reintentos definidos no logra auto recuperarse se da por abortado el Sistema.

Recuperación: Capacidad de Recuperar sólo los proceso abortados, para lo cual, se debe gatillar la misma Shell de Ejecución.

Adicionalmente la administración del sistema tiene la capacidad de: resetearse, generar

mails automáticos dependiendo de cada Job control.

Cada Proceso se registrara las ejecuciones en las tablas de control internas como corporativa.

Otras Funcionalidades

Page 22: CDD MODULO CDD ORACLE

22

Tabla de Control• Ejemplos de cómo se visualizan los registro procesados en la tablas de control CDD, esta

tabla registra para ambos procesos sea este Proceso para el Modelo Oracle y Teradata

• CTR_CDD

• EJECUTA_PROCESOS

Tablas de Control

Page 23: CDD MODULO CDD ORACLE

23

Tips para correcto funcionamiento del sistema

A continuación se detalla los tips de buenas practicas:

Se debe considerar que para una buena ejecución del proceso se debe encontrar 100% compilado

y sin errores. Se recomienda que mensualmente se realice una compilación completa del sistema.

Dado el gran volumen de archivos de procesamiento de datos a cargar diariamente , se

recomienda contar con al menos un 20% ó 10% de espacio libre en Unix.

Los Administradores de base de datos tanto de ORACLE, deben tener la preocupación de

mantener los tablespaces asignados con espacio suficiente.

Se recomienda realizar mantención semanal a las tablas de oracle con el objetivo de mantener los

índices actualizados.

Check List de Diagnostico

Page 24: CDD MODULO CDD ORACLE

24

Anexo

Otros Job

Todos los Job que cumplan con la siguientes nomenclatura :

• CDD_9999_Carga_Nombre_Tabla_00 : Estos Job Fueron creados para realizar el truncado de la tabla , Vía Procedimiento almacenado

• CDD_00_Inserta_First_Tabla_Corp_Nombre_Tabla : Estos Job fueron creados para insertar en la tabla de control corporativa el valor “iniciado” al comienzo de cada carga que se estaba ejecutando.

Page 25: CDD MODULO CDD ORACLE

25

PREGUNTAS ¿ ?

Preguntas