220 likes | 497 Views
CDD MODULO TD TERADATA. Mayo 2012. Temario. INDICE. Contexto General Definición de Ambiente Procedimiento de Ejecución Estructura Job Principal Carga tablas Padres Carga Tablas Criticas Reservas Carga Tablas No Criticas Reservas Carga Tablas No Criticas Ticket
E N D
CDDMODULO TD TERADATA Mayo 2012
Temario INDICE • Contexto General • Definición de Ambiente • Procedimiento de Ejecución • Estructura Job Principal • Carga tablas Padres • Carga Tablas Criticas Reservas • Carga Tablas No Criticas Reservas • Carga Tablas No Criticas Ticket • Carga Tablas TKT No Criticas 1 • Carga Tablas TKT No Criticas • Carga Tablas Graba Estados • Otras Funcionalidades • Tablas de Control
Contexto General • CDD (Carga Modelo TD Teradata) Proceso que permite cargar desde el modelo Oracle al modelo Teradata, toda la información relacionada a las Reservas y Ticket del Pasajero, este proceso a diferencia de oracle no validad integridad de los datos sino más bien es un trasvasije de información. Info.: Este Proceso esta asociado a distintos modos de carga que permitirán en casos excepcionales, reprocesar, recargar la información para uno o mas periodos según se determine
Contexto General • Tablas Padre Tablas principales de Negocio que permiten mantener la consistencia de la información de los registros de Reserva (RES) y Ticket (Tkt_Document), la finalización incorrecta de esta etapa NO permite continuar con el proceso de Carga • Tablas Criticas Conjunto de Tablas definidas por el usuario, con segunda prioridad de carga, con el fin de disponbilizar los datos para otro proyectos • Tablas No Criticas Conjunto 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
Contexto General • Para desarrollar la solución se utilizó: • DATA STAGE 7.52 Solución implementada mediante Jobs ETL • BASE DATOS Oracle 10g y Teradata 12 • PARTICIONES SOBRE LAS TABLAS Para Extraer la información desde el modelo Oracle, se determinará la particion según la fecha de proceso y se cargara en el Modelo WRK de Teradata. • JOB CONTROL (Lenguaje de programación del los Job Server) Principalmente para orquestar la llamada de Job y la utilización de ODBC • ODBC Se utiliza ODBC principalmente para administrar las tabla de control en cada uno de los Procesos
Definición de Ambiente • Preparando el Ambiente de ejecución • Actualizar parámetro Servidor Datastage Para 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_CDD Base de datos: 57.228.166.91 Server Owner: EXCDD Usuario: SRVCDD Pw: SRVCDD • Creación ODBC (TERADATA) • Nombre: [Tdata_ CDD_WRK] • Driver=/app/datastage/Ascential/DataStage/branded_odbc/drivers/tdata.so • Description=Conexion a Teradata CDD_WRK • Database=CDD_WRK • DBCName=57.228.128.8 • Server=57.228.128.8 • Port=1025 • DateTimeFormat=AAA
Definición de Ambiente • 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/DAT Carpeta que tendrá todos los archivos de carga enviados por SABRE • /dsdata/DSCDD/HSH Carpeta donde se generaran los archivos HASH utilizados por el proceso • /dsdata/DSCDD/TMP Carpeta donde se generaran los archivos Temporales utilizados por el sistema
Procedimiento de Ejecución • Configuración: • Configuración de Parámetros de DSParams • Ejecución Shell: Nombre Shell: Ejecuta_DSCDD.sh / Ejecuta_DSCDD_OnDemand.sh Pará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 • 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) • Ejemplo de ejecución Programada (Control-M): La ejecución programada ejecutara secuencialmente la carga de Teradata, en primera instancia gatillara la carga del modelo WRK que será analizado en esta presentación y en segunda instancia y si termina correctamente ejecutara para el modelo FDM ./Ejecuta_DSCDD.sh 57.228.129.28 dscdddscddDSCDD CDD_00_Main_Ejecucion_Teradata NORMAL /dsdata/DSCDD/LOG PS_FECHA_DE_ARCHIVOS_CDD 0 cynthia.rivera@lan.com • Ejemplo de ejecución On-Demand (Manual): ./Ejecuta_DSCDD_OnDemand.sh 20110214 57.228.129.28 dscdddscddDSCDD CDDTD_00_EJECUTA_ALL NORMAL /dsdata/DSCDD/LOG PS_FECHA_DE_ARCHIVOS_CDD 0 cynthia.rivera@lan.com La ejecuciones sólo se diferencian en que para el Proceso OnDemand se debe ingresar la Fecha de Proceso (20110214) y en la programada se Calcula.
Job Principal • CDD_00_Ejecuta_All • Sequence principal que gatilla el proceso que Carga de los registro ingresados a Oracle a Teradata El proceso comienza enviado un Correo informando el inicio del proceso y como en Oracle ya realizo la integridad de los datos, el proceso es sólo un trasvasija de información hacia las tablas Teradata • CDDTD_00_CargaTD_01_Padres • CDDTD_00_CargaTD_01_Criticas • CDDTD_00_CargaTD_01_Res_No_Criticas • CDDTD_00_CargaTD_01_Tkt_No_Criticas • CDDTD_00_GrabaEstado
Carga tablas Padres • Sequence CDDTD_00_CargaTD_01_Padres • El sequence CDDTD_00_CargaTD_01_Padres es el encargado de orquestar de forma “PARALELA” la carga de las tablas Padre (Reservas y ticket), comienza con el llamado al Job Control (CDDTD_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.
Carga Tablas Criticas Reservas • Sequence CDDTD_00_CargaTD_01_Criticas • El sequence CDDTD_00_CargaTD_01_Criticas es el encargado de orquestar de forma “PARALELA” la carga de las tablas criticas, comienza con el llamado al Job Control (CDDTD_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 Reservas • Sequence CDDTD_00_CargaTD_01_Res_No_Criticas • El sequence CDDTD_00_CargaTD_01_Res_No_Criticas es el encargado de orquestar de forma “SEQUENCIAL” la carga de las tablas NO criticas, comienza con el llamado al Job Control (CDDTD_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. 13
Carga Tablas No Criticas Ticket • Sequence CDDTD_00_CargaTD_01_Tkt_No_Criticas • El sequence CDDTD_00_CargaTD_01_Tkt_No_Criticas es el encargado de orquestar de forma “SEQUENCIAL” la carga de las tablas NO criticas, llamando a las Sequencias • CDDTD_00_CargaTD_01_Tkt_No_Criticas_1 • CDDTD_00_CargaTD_01_Tkt_No_Criticas_2 14
Carga Tablas No Criticas 1 • Sequence CDDTD_00_CargaTD_01_Tkt_No_Criticas_1 • El sequence CDDTD_00_CargaTD_01_Tkt_No_Criticas_1 es el encargado de orquestar de forma “SEQUENCIAL” la carga de las tablas NO criticas, comienza con el llamado al Job Control (CDDTD_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. 15
Carga Tablas No Criticas 2 • Sequence CDDTD_00_CargaTD_01_Tkt_No_Criticas_2 • El sequence CDDTD_00_CargaTD_01_Tkt_No_Criticas_2 es el encargado de orquestar de forma “SEQUENCIAL” la carga de las tablas NO criticas, comienza con el llamado al Job Control (CDDTD_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. 16
Carga Tablas Graba Estados • JOB CDDTD_00_GrabaEstado • Job que lee la tabla de control y graba un archivo de texto todos los registros asociado a la carga de TD y que será enviado al final del proceso vía correo electrónico, con el fin de informar al administrador el estado final de la carga. 17
Otras Funcionalidades • 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. • Para cada proceso se registrara las ejecuciones en las tablas de control internas como corporativa.
Tablas de Control • 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
CheckList de Diagnostico • 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.
Preguntas • PREGUNTAS ¿ ?