Вы находитесь на странице: 1из 9

Proceso ETL (7.

3)
Introduccin (7.3.1)
Debido a que el sistema utiliza como fuente de informacin los datos de
monitoreo de Pandora FMS, debe de existir un conjunto de procesos
encargados de extraer, transformar y cargar dichos datos (ETL: Extraction,
Transforming and Loading).

Propsito (7.3.2)
El propsito de esta seccin del documento es recolectar, analizar y definir
las necesidades y las caractersticas de los procesos necesarios para
obtener la informacin desde el sistema de monitoreo y dejarla disponible
en Signa Web.

Alcance (7.3.3)
El presente documento aplica solamente al proyecto del sistema
subsistema de monitoreo Pandora (v 2.1)

y al

Proceso ETL (7.3.4)


Generalidades (7.3.4.1)
La arquitectura del proceso ETL maneja distintas entidades. Cuando se hace
referencia a nodos se est mencionado los elementos fsicos a monitorear,
quiere decir: servidores, impresoras, routers, etc. Cuando se habla de
mdulo se hace referencia a elementos o servicios que estn desglosados
para su control dentro del nodo monitoreado.

Arquitectura de alto nivel (7.3.4.2)


El proceso ETL bsicamente maneja estructuras y procesos de bases de
datos para realizar su tarea. Dicho proceso consiste en filtrar, transformar y
cargar la informacin requerida para el sistema . Tambin se contempla un

manejo controlado y registrado del proceso para dar mayor seguridad y


control sobre la carga de datos.

Por un lado est la base de datos utilizada por el sistema Pandora que est
encargada de recolectar la informacin de monitoreo. La base de datos del
sistema tiene la informacin consolidada y adaptada de Pandora para sus
procesos de reportes gerenciales. La base de datos del proceso de
extraccin contiene la informacin acerca del propio proceso ETL y tambin
tablas temporales para el almacenamiento de la informacin antes de ser
llevada a Signa.

La figura 14 contiene una representacin esquemtica de los grandes


componentes involucrados en el proceso ETL y la direccin del flujo de datos
entre los repositorios involucrados.

Figura 14 - Arquitectura de alto nivel del proceso ETL

Entidades involucradas (7.3.4.3)


Pandora (7.3.4.3.1)

Las entidades involucradas en el proceso ETL para el sistema de monitoreo


son las siguientes:
Tipo

Nombre

Descripcin

Tabla

tevento

Registro de eventos del sistema Pandora

Tabla

tgrupo

Categoras de tipo de nodos a monitorear

Tabla

tagente

Informacin sobre nodos monitoreados

Tabla

tagente_modulo

Mdulos que contienen los nodos

Tabla 85: Tablas de Pandora FMS

Signa (7.3.4.3.2)
Las entidades involucradas en el proceso ETL para el sistema
siguientes:

Tipo

Nombre

Descripcin

Tabla

Node_categories

Categora de nodos

Tabla

Nodes

Nodos

Tabla

Modules

Mdulos

Tabla

Module_state_record
s

Estado de los mdulos

son las

Tabla 86: Tablas de SIGNA

ETL (7.3.4.3.3)
Las entidades involucradas en el proceso ETL son las siguientes:

Tipo

Nombre

Descripcin

Tabla

Etl_sessions

Datos relevantes para cada


sesin ETL iniciada

Tabla

Etl_settings

Datos de configuracin para


las sesiones ETL

Tabla

Etl_session_mode

Modos

del

proceso

ETL

(automtico, manual)
Tabla

Etl_session_scope

Alcance del proceso


(total, incremental)

Tabla

node_category_tmp

Categora
(temporal)

Tabla

node_tmp

Nodos (temporal)

Tabla

module_tmp

Mdulos (temporal)

Tabla

event_state_tmp

Estado de
(temporal)

Procedimie
nto

de

nodos

mdulos

pck_aud_prc_ins_log_auditoria

Insercin
auditar

pck_con_fnc_audit_log_severity_
code

Funcin de retorno
cdigo de severidad.

pck_con_fnc_return_action_flow

Procedimiento de retorno de
descripcin de estado de
flujo.

Funcin

pck_con_fnc_return_code

Cdigo de retorno

Funcin

pck_con_fnc_return_message

Mensaje de retorno

Funcin

pck_con_fnc_return_session_sta
ge

Estado de la sesin (etapa)

pck_etl_fnc_get_concurrent_sess
ions

Obtiene la cantidad
sesiones concurrentes

pck_etl_prc_adm_event_flow

Controla los estados


posibles de los eventos del
monitoreo (de que estado
pasar al siguiente)

pck_etl_prc_adm_loa_session

Procedimiento principal de
control de las sesiones de
carga (temporal)

pck_etl_prc_adm_tra_session

Procedimiento principal de
control de las sesiones de
transferencia (permanente)

pck_etl_prc_chk_loa_session

Procedimiento de chequeo
de carga.

Procedimie
nto

pck_etl_prc_chk_tra_session

Procedimiento de chequeo
de transferencia.

Procedimie

pck_etl_prc_end_loa_session

Procedimiento de

Funcin
Funcin

Funcin
Procedimie
nto

Procedimie
nto
Procedimie
nto
Procedimie
nto

de

los

ETL

datos

para
de

de

nto
Procedimie
nto

finalizacin de carga
pck_etl_prc_end_session

Procedimiento de
finalizacin de transferencia

Procedimie
nto

pck_etl_prc_get_last_event_id

Obtencin del ltimo evento


importado

Procedimie
nto

pck_etl_prc_get_next_event_id

Obtencin del prximo


evento a importar

pck_etl_prc_get_settings

Obtencin de configuracin
de las sesiones de
importacin

pck_etl_prc_ini_session

Procedimiento de
inicializacin de sesiones de
importacin

pck_etl_prc_loa_ins_session_ite
ms

Procedimiento de carga
datos de la importacin
(qu objetos fueron
cargados, etc.)

Procedimie
nto

pck_etl_prc_loa_tmp_modules

Procedimiento de carga de
servicios

Procedimie
nto

pck_etl_prc_loa_tmp_module_st
ate_records

Procedimiento de carga de
eventos

Procedimie
nto

pck_etl_prc_loa_tmp_nodes

Procedimiento de carga de
nodos

Procedimie
nto

pck_etl_prc_loa_tmp_node_cate
gories

Procedimiento de carga de
categora de nodos.

Procedimie
nto

pck_etl_prc_tra_tmp_modules

Procedimiento de
transferencia de servicios

Procedimie
nto

pck_etl_prc_tra_tmp_module_sta
te_records

Procedimiento de
transferencia de eventos

pck_etl_prc_tra_tmp_nodes

Procedimiento de
transferencia de nodos

pck_etl_prc_tra_tmp_node_categ
ories

Procedimiento de
transferencia de categora
de nodos.

pck_etl_sessions_api_prc_upd_s
ession

Procedimiento de
actualizacin de datos de
sesin.

pck_etl_session_item_api_prc_up

Procedimiento de

Procedimie
nto
Procedimie
nto
Procedimie
nto

Procedimie
nto
Procedimie
nto
Procedimie
nto
Procedimie

nto
d_session_item

actualizacin de datos de la
importacin.

Tabla 87: Tablas ETL

Descripcin del proceso (7.3.4.4)

Generalidades (7.3.4.4.1)
El proceso ETL consta de dos etapas netamente diferenciadas pero
vinculadas entre s:

Una etapa de filtrado, transformacin y carga a entidades temporales


de almacenamiento.

Una etapa de copiado de la informacin temporal a las tablas


definitivas de la base de datos Signa.

El motivo de la existencia de estas dos fases separadas es proveer al


usuario de un mayor control y seguridad en la informacin que est
ingresando al sistema. Le otorga la capacidad de pre visualizar la
informacin que ser ingresada al sistema sin haberlo realmente realizado.

Para facilitar el proceso de copiado hacia las estructuras finales del sistema
todas las tablas temporales contienen los mismos campos y relaciones
existentes que las tablas finales. De esa forma cualquier problema de
integridad es notado de antemano en la primera etapa.

Narrativa del proceso (7.3.4.4.2)


Durante el proceso de anlisis del sistema de monitoreo Pandora FMS se
aprecia que la informacin realmente relevante para el centro de cmputos
est contenida en el historial de eventos (tabla tevento) surgido por alarmas
generadas por Pandora. Por consiguiente esta tabla es la central para todo
el proceso ETL.

Cada sesin ETL toma en forma ordenada un cierto rango contiguo de


eventos registrados por Pandora (en orden cronolgico ascendente). Este
rango queda debidamente registrado para evitar que se incluido
nuevamente en futuros procesos.

Una vez que se ha determinado el conjunto de eventos a transferir, se


procede a evaluar si dentro de ese rango existen categoras de nodos,
nodos o mdulos que no estn cargados en Signa (pues quizs nunca fueron
incluidos en los eventos de Pandora). Si faltan elementos son previamente
cargados antes de la carga de los eventos que tienen asociados.

Tan pronto son cargados (en caso de que aplique) las categoras de nodos,
los nodos o los mdulos se procede a cargar la informacin de eventos. En
este caso la carga tiene una cierta complejidad que debe resolverse durante
dicho proceso.

La complejidad del proceso de carga de eventos radica en que no cuentan


con informacin integrada en cada registro del flujo total de una alarma (su
disparo y luego su cese por resolucin). Esto obliga a procesar los registros
conservando cierto historial de sucesos para lograr una informacin
completa.
La siguiente imagen brinda informacin de alto nivel acerca del orden de los
diversos sucesos que ocurren y los eventos asociados.

Ilustracin 1 - Flujo de eventos de alto nivel

1. Peticin de ejecucin del proceso: el usuario inicia el proceso


2. Comprobacin y chequeos: se realizan una serie de comprobaciones
preliminares antes de comenzar con la ejecucin (cantidad de
procesos concurrentes, existencia de configuracin para realizar el
proceso ETL).
3. Bsqueda de nuevos eventos e informacin asociada: se realiza la
bsqueda de nuevos eventos e informacin asociada para cargar en
Signa Web.
4. Carga de informacin (temporal): se hace carga en entidades
temporales.
5. Transferencia de informacin (permanente): se
informacin temporal hacia estructuras permanentes.

transfiere

la

6. Registro del suceso: se realiza registro de la sesin de importacin.

Manejo de excepciones (7.3.4.4.2)


El proceso ETL est realizado mediante diversos procedimientos
almacenados en la base de datos. El motivo de la eleccin de esta
alternativa es debido a que el proceso es exclusivamente con datos en la
propia base de datos. Debido a tema de rendimiento se consider una mejor
opcin que realizarlo a nivel de la aplicacin.

Los distintos problemas que se pueden presentar en el proceso son


manejados con el manejo adecuado de excepciones en los procedimientos
almacenados. Tan pronto como una situacin problemtica es detectada se

propaga un cdigo de error en los sucesivos procedimientos manejados y se


retorna el mensaje apropiado.

Вам также может понравиться