Mayo 2012
Inicio Presentación

Contexto General

Preparación de Ambiente

Ejecución de la Shell

Validaciones de la Shell

Carga Inicial

Extracción

Control y monitoreo del Sistema

Check List de Diagnostico

Procesos de Cutover
2

Descripción del Proceso
Bajo el contexto del proceso de Cut Over de Bajada PNR, se deberá realizar la carga inicial de todos los
PNR´s de LAN que se generen en el nuevo host SABRE. El proceso de carga diaria está diseñado para
administrar volúmenes “diarios” de información por lo que se definió esta funcionalidad que permite
administrar la carga de todos los PNR’s de LAN, que tiene un volumen de información mucho mayor que
el diario (1, 5 millones de PNR’s), a través de cargas consecutivas de volúmenes diarios.
3

Preparando el Ambiente de Ejecución
Para la ejecución del procesos de Carga inicial se debe considerar :
 Configuración:
 Validar limpieza de tabla PID de Proceso, tablas de Control y tabla de bloque en EXFTPPNR.
 Validar limpieza de bloque en EXCDD.
 Configuración de Parámetros de DSParams
 $PS_FECHA_CDD=DD-MM-YYYY (Fecha CDD Green File)
 Ejecución:
 Ejecución Jobs DataStage (E_CARGAINICIAL\CRG_INICIAL_BLOQUE)
 JB001_ADM_INICIAL_CRG_TBL_BLOQUE_CDD donde los parámetros a manejar son:
 $PS_ID_PARTICION=D1
 $PS_CNT_REG_BLOQUE=300000
 JB002_ADM_INICIAL_CRG_TBL_CTL_BLOQUE donde el parámetro a manejar es:
 $PS_NRO_PID=9000
 Ejecución Shell de Proceso (/dsapp/DSNHBPNR/SHL/)
 SHELL_PROC_CGR_INICIAL.sh D16 (Partición donde se ubica green file).
4
 Ejecutada la Shell (SHELL_PROC_CGR_INICIAL.sh ), por pantalla se mostrará información
relacionada al status (online) del proceso, además se genera un archivo log con el detalle de la
ejecución.
5

Entre las validaciones que realizara la Shell de Carga diaria son:

VALIDACIÓN PARÁMETROS DE ENTRADA
Revisión de los parámetros de ejecución

REVISIÓN UPTIME DE MÁQUINAS
 Revisa si la máquina DataStage se encuentra abajo o no responde
 Revisa si la máquina Oracle CDD se encuentra abajo o no responde
 Revisa si la máquina Oracle PNR se encuentra abajo o no responde

REVISIÓN UPTIME BASE DATOS
 Revisa si existe conectividad con las bases de Datos

REVISIÓN ESPACIO DISPONIBLE EN MÁQUINA DATASTAGE
 Revisa la disponibilidad de espacio en la carpeta /dsdata
 Revisa la disponibilidad de espacio en la carpeta /dsproject

VALIDACIÓN DE DISPONIBILIDAD DE DATOS EN CDD
 Revisa que las tablas utilizadas por BPNR, estén correctamente ejecutadas para el último proceso CDD

EJECUCIÓN DEL JOB DE CONTROL
Gatilla el Job Control (JOB_CTRL_CGR_INICIAL) que realiza la carga inicial
6

Job Control (JOB_CTRL_CGR_INICIAL)
1.- Determina todos los Bloques a procesar
2.- Lee listado generado
3.- Llama al proceso principal de carga Inicial (JBCTRL_ADM_ACT_ONGOING_CRG_INICIAL) **
4.- Actualiza la tabla de control de Bloque para la carga inicial
5.- Obtiene el numero de Pid a procesar
7
** Job Control (JBCTRL_ADM_ACT_ONGOING_CRG_INICIAL)
Para la carga inicial se destacan los procesos de Extracción, Integridad,
Transformación , Respaldo - Eliminación y Carga
8
EXTRACCIÓN
9

Proceso que extrae toda la información de cada tabla funcional CDD válida para la homologación del
modelo BPNR bajo la partición que le compete a la Fecha CDD nueva a cargar. Dicha información es
llevada a archivos Planos (Unix con nomenclatura archivo EXT_ACT_[abreviatura tabla funcional
]_NPID_[Valor Pid Nuevo].txt).
10

Etapa de Extracción: Comienza con el llamado al JBCTRL001_ADM_ACT_CRG_INI_EXTRACCION ,
encargado de actualizar la tablas de Control informando el inicio del proceso, Ejecuta la extracción,
llamando la secuencia SEQ001_ADM_ACT_CRG_INI_EXTRACCION, encargada de llamar de forma
“Paralela” los Job’s que realizarán la extracción desde el modelo CDD (Oracle). Una vez realizada la
extracción, se actualiza las tabla de control informando fin del proceso.
Las tablas del modelo CDD utilizadas para el proceso de Extracción son:
RES
RESPASSENGER
RESSSR
RESTRAVELARRANGER
RESDATAINDEX
RESPASSENGERFT
RESFLIGHT
RESPASSENGERPHONE
RESPAXDOC
RESSUSPDOCAGMT
RESPASSENGEREMAIL
RESEMERGENCYCTC
RESUSPTIMELMT
11

SEQ001_ADM_ACT_CRG_INI_EXTRACCION : Proceso encargado de llamar de forma “Paralela” los Job’s
que realizan la extracción.
12

Job’s de Extracción: Un JOB es el proceso más atómico dentro de la cadena de ejecución de cada una de las
etapas. Para la etapa de extracción, veremos como ejemplo la extracción de la Tabla RES del modelo Oracle
CDD, teniendo en cuenta que el resto de las extracciones usan la misma mecánica.

Parámetros del Job : Todos los parámetros están con un valor por defecto definido previamente en el
Administrador DataStage, donde algunos son modificados según la necesidad del proceso.
13
INTEGRIDAD
14

Proceso que cruza la información obtenida desde la Etapa de Extracción de cada tabla funcional CDD
con los PNR’s validos (previamente validados) a procesar. Dicha información es llevada a tablas de
trabajo (EXFTPWRK) y archivos planos (Unix con nomenclatura INT_ACT_[Abreviatura Tabla Funcional
que lo Requiere]_[Abreviatura Tabla Funcional que lo Genera]_NPID_[Valor Pid Nuevo].txt) según
complejidad de reglas de negocio y volumetría de datos.
15
Truncado de Integridad:
Antes de ejecutar la etapa de integridad, se deben truncar las tabla de Trabajo(WRK), proceso que realiza el JobControl
JBCTRL001_ADM_ACT_TRUNCA_TBL_INTEGRACION, Llamando al Job JB001_ADM_ACT_SP_TRUNCA_TABLA, donde,
para cada una de las tablas de trabajo, llama al procedimiento almacenado PRC_TRUNCA_TABLA_WRK y ejecuta
el borrado.
Tablas de Trabajo
Procedimiento almacenado (extracto)
Nombre : PRC_TRUNCA_TABLA_WRK
Usuario : EXFTPWRK
BEGIN
str_sql := 'TRUNCATE TABLE ' || P_OWNER || '.' || P_TABLA;
EXECUTE IMMEDIATE str_sql;
EXCEPTION
WHEN NO_DATA_FOUND THEN
str_msg
:= str_sql || ' -> ' || SQLERRM;
l_retorno := -2; -- TABLA VACIA
WHEN OTHERS THEN
str_msg
:= str_sql || ' -> ' || SQLERRM;
l_retorno := -1; -- ERROR SQL
END;
Finalizado correctamente el proceso de truncado, continuamos con la etapa de Integridad, de lo
contrario abortamos el proceso completo.
16

Etapa de Integridad :

Comienza con el llamado al JBCTRL002_ADM_ACT_INTEGRIDAD , encargado de actualizar las tablas de Control
informando el inicio del proceso. Posteriormente llama a la secuencia
SEQ002_ADM_ACT_EJECUTA_INTEGRIDAD, encargada de llamar de forma “Paralela” los Job’s que realizarán
la Integración y finalmente actualiza las tablas de control informando el fin del proceso.

SEQ002_ADM_ACT_EJECUTA_INTEGRIDAD
17

Job’s de Integridad:

Los JOB’S son el proceso más atómico dentro de la cadena de ejecución de cada una de las etapas. Para
la etapa de Integridad veremos como ejemplo el job que realiza la integridad del archivo de texto
EXT_ACT_RVA_NPID_#$PS_NRO_PID#.txt generado en la etapa de extracción.
Todos los Job’s de integridad generan un Archivo de texto con los errores encontrados en el proceso.
18
TRANSFORMACION
Y
RESPALDO - ELIMINACIÓN
(Procesos “Paralelos”)
19
Transformación
20


Proceso que transforma la información de cada archivo plano integro ó tabla de trabajo generada en la
etapa de Integridad, según la lógica de negocios válida para el modelo activo. Dicha información es
llevada a archivos planos finales de carga (Unix con nomenclatura CRG_ACT_[Abreviación tabla
Funcional]_NPID_[Valor PID Nuevo].txt).
Cabe señalar que para la regla de negocio asociada a la correspondencia del código de Status del
Segmento ó el Ticket con la tabla paramétrica de códigos status del sistema, en caso de ser fallido,
genera un archivo de LOG asociado al Error.
21

Etapa de Transformación :
Comienza con el llamado al JBCTRL003_ADM_ACT_TRANSFORMACION , encargado de actualizar las tablas
de Control, informando el inicio del proceso. Posteriormente llama a la secuencia
SEQ003_ADM_ACT_EJECUTA_TRANSFORMACION, encargada de llamar de forma “Paralela” los Job’s que
realizarán la Transformación. Finalmente actualiza las tablas de control informando fin del proceso.
SEQ003_ADM_ACT_EJECUTA_TRANSFORMACION
22
Respaldo-Eliminación
23

Proceso que respalda la información de cada tabla funcional BPNR cuyos PNR’s existan dentro del cruce
con los PNR’s validos a procesar llevándolas a archivos Planos (Unix con nomenclatura RSP_[nombre de
tabla funcional]_NPID_[valor PID nuevo].txt). Dichos archivos se llevan a las tablas de respaldo
existentes en modelo EXFTPWRK. Finalmente se eliminan todos los PNR’s validos a procesar existentes
en el modelo activo BPNR en base a los atributos PNRLocatorID (PNDT_ID) y PNRCreateDate
(PNDT_FCH_CREAC) cargados en los archivos planos de respaldo.
24
Truncado Respaldo y Eliminación
Antes de ejecutar la etapa Respaldo - Eliminación, se deben truncar las tabla de Trabajo (EXFTPWRK).
Proceso que realiza el JobControl JBCTRL002_ADM_ACT_TRUNCA_TBL_RESP_ELIMINACION, llamando al Job
JB001_ADM_ACT_SP_TRUNCA_TABLA, donde, para cada una de las tablas de trabajo, llama al procedimiento
almacenado PRC_TRUNCA_TABLA_WRK y ejecuta el borrado
Tablas de Trabajo
Procedimiento almacenado (extracto)
Nombre : PRC_TRUNCA_TABLA_WRK
Usuario : EXFTPWRK
BEGIN
str_sql := 'TRUNCATE TABLE ' || P_OWNER || '.' || P_TABLA;
EXECUTE IMMEDIATE str_sql;
EXCEPTION
WHEN NO_DATA_FOUND THEN
str_msg
:= str_sql || ' -> ' || SQLERRM;
l_retorno := -2; -- TABLA VACIA
WHEN OTHERS THEN
str_msg
:= str_sql || ' -> ' || SQLERRM;
l_retorno := -1; -- ERROR SQL
END;
Finalizado correctamente el proceso de truncado, continuamos con la etapa de Integridad, de lo
contrario abortamos el proceso completo.
25

Etapa de Respaldo - Eliminación:
Comienza con el llamado al JBCTRL004_ADM_ACT_RESPALDO_ELIMINACION, encargado de actualizar las tablas de
Control informando el inicio del proceso. Posteriormente llama a la secuencia
SEQ004_ADM_ACT_EJECUTA_RSP_ELIMINACION, que es la encargada de llamar de forma “PARALELA” los Job’s
que realizarán el Respaldo y la Eliminación y finalmente actualiza las tabla de control informando fin del proceso.
SEQ004_ADM_ACT_EJECUTA_RSP_ELIMINACION
26
CARGA
27

Etapa final del proceso de Carga inicial y es la encargada de leer y cargar los archivos de carga generado
en la etapa anterior (Unix con nomenclatura CRG_ACT_[Abreviación tabla Funcional]_NPID_[Valor PID
Nuevo].txt) y llevarlos al modelo Activo.
28

Etapa de Carga :
Comienza con el llamado al JBCTRL005_ADM_ACT_CARGA , encargado de actualizar las tablas de
Control, informando el inicio del proceso. Posteriormente llama a la secuencia
SEQ005_ADM_ACT_EJECUTA_CARGA, encargada de llamar de forma “Paralela” los Job’s que
realizarán la Carga inicial. Finalmente actualiza las tablas de control informando el fin del proceso.
SEQ005_ADM_ACT_EJECUTA_CARGA
29
Carga
(JB001_CRG_ACT_RVA)

Job’s de Carga:

Un Job es el proceso más atómico dentro de la cadena de ejecución de cada una de las etapas. Para la etapa de Carga
veremos como ejemplo el job que realiza la carga del archivo de texto CRG_ACT_RVA_NPID_#$PS_NRO_PID#.txt
generado anteriormente en la etapa de Transformación.
30
Otras Funcionalidades
31
Otras funcionalidades
•

La administración de Cada SubSistema tiene capacidad de:
 Reintentos: (Valor Paramétrico, default 3) Durante la ejecución de los Job’s, una vez detectado la
caída de alguno de ellos, el proceso reintentará su ejecución el número de veces definido. Si después
de los reintentos definidos no logra ejecutarse correctamente, se da por abortada la ejecución del
Sistema.
 Recuperación: Capacidad de Recuperarse del SubSistema a partir del Job Abortado. Solo se debe
gatillar la misma Shell de Ejecución.

Adicionalmente la administración del sistema tiene la capacidad de: resetearse y generar mails
automáticos dependiendo de cada Job control.

Cada Proceso registrará las ejecuciones en las tablas de control internas, así como también en la
corporativa.
32
Descargar

Proceso Carga Inicial