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

Jos Luis Rival Muoz Ing. .

(e) en Informtica

CONTENIDO
Introduccin Definicin Objetivos Caractersticas

Estructura
Ventajas Desventajas Beneficios Problema Solucin Dinmica

Implementacin
Integracin con BizTalk server 2009 Conclusin

INTRODUCCION
En la arquitectura de flujo de datos el sistema se percibe como una sucesin de transformaciones que sufre una serie de datos de entrada a travs del sistema. Los datos ingresan al sistema y fluyen a travs de las componentes una a una hasta que se asignan a un destino final: salida o almacenamiento. Son tpicos casos de arquitecturas que promueven la reusabilidad y la modificabilidad.
Existen dos subestilos:

secuencial por lotes tubos y filtros

PIPES AND FILTERS


Est compuesto por un grupo de filtros (Filters), los cuales tienen un conjunto de entradas y un conjunto de salidas. Cada componente lee las entradas y las transforma en salidas. La comunicacin entre los filtros se realiza a travs de tuberas (pipes).

OBJETIVOS
Enfatiza la transformacin incremental de data en componentes sucesivos. Procesar streams de data dividiendo en pasos lgicamente distintos. Flexibilidad:
Cada filtro es una componente independiente. Reemplazar un filtro ineficiente Reemplazar un filtro por otro con comportamiento ligeramente distinto.

Rendimiento:
Baja latencia: Data se procesa de manera incremental entre filtros. paralelismo: todo filtro est activo concurrentemente con otros mientras exista data.

Aplicabilidad:
se puede identificar un flujo secuencial de data a lo largo de pasos de proceso. cada paso es dependiente temporalmente del paso previo.

CARACTERISTICAS
Los tubos no tienen estado interno y simplemente
comunican datos entre los filtros.

Tubos y filtros ejecutan en forma no determinada sobre los


datos hasta que stos se acaban.

Restricciones de conexin:
- Existe una fuente de datos conectada al puerto input de un filtro; - Existe un destino de datos conectado al puerto output de un filtro. Estilo orientado a la transformacin de datos.

ESTRUCTURA
FILTER Los componentes filter son las unidades de procesamiento del pipe.

Un filter:
- Enriquece los datos de entrada computando y adicionando informacin.

- Refina los datos concentrando o extrayendo informacin.


- Transforma los datos de entrada entregando los datos en alguna otra representacin.

ESTRUCTURA
La actividad de un filtro puede ser disparada por: FILTROS PASIVOS: - Los elementos de un pipeline posterior halan los datos de salida del filtro. - Los elementos del pipeline empujan los datos de salida al filtro. FILTROS ACTIVOS: - La forma ms comn es que el filter est activo en un ciclo, halando su entrada y empujando la salida al pipeline.

ESTRUCTURA
PIPES

Conectan origen-filtro, filtro-filtro, filtro-destino Transferencia de datos con un buffer First-In-FirstOut Si dos filtros activos se comunican con un tubo, ste los sincroniza

ESTRUCTURA
PIPES Los pipes denotan las conexiones entre los filtros, entre la fuente de datos y el primer filtro, y entre el ltimo filtro y el sumidero. Si dos componentes activos estn unidos, el pipe los sincroniza con un buffer FIFO.

ESTRUCTURA
ORIGEN DE LOS DATOS input del sistema brinda al sistema una serie de datos con la misma estructura o tipo ejemplos: archivo de lneas de texto, sensor pueden tambin ser activos (push) o pasivos. DESTINO DE LOS DATOS a l llegan los resultados del procesamiento del sistema existen destinos activos (pull) y pasivos

ESTRUCTURA
FUENTES DE DATOS Las fuentes de datos representan la entrada al sistema, y proporcionan una secuencia de valores de la misma estructura o tipo.

La fuente de datos de un pipeline puede empujar los datos activamente a la primera etapa de procesamiento o proporcionar los datos pasivamente cuando el filtro los hala.

ESTRUCTURA
SUMIDEROS DE DATOS Los sumideros de datos recolectan los resultados del final del pipeline. - Un sumidero activo hala los resultados de la etapa de procesamiento precedente. - Un sumidero pasivo permite al filtro precedente empujar o escribir los resultados en l.

RESTRICCIONES EN LA CONFIGURACIN

Los pipes conectan puertos de salida con puertos de entrada. Los filtros son independientes. Pipeline: Especializacin que indica que la configuracin es lineal. Acyclic: Especializacin que indica que no debe haber ciclos en la configuracin.
ESPECIALIZACIONES DEL ESTILO Pipeline: La topologa es una secuencia lineal de filtros. Pipes con capacidad limitada. Pipes con tipos, los datos pasados ante dos filtros tiene un tipo bien definido. (ej: un stream de char) EJEMPLO: LOS PROGRAMAS ESCRITOS EN SHELL DE UNIX. Componentes: procesos. Conectores (pipes): Ficheros FIFO.

VENTAJAS
Permite entender el sistema global en trminos de la
combinacin de componentes.

Soporta de buena manera la reutilizacin.

Facilidad de Mantenimiento y mejora.


Facilidad de diagnstico (rendimiento, interbloqueo) Soportan la ejecucin concurrente de filtros.

No son necesarios filtros intermedios, pero son


posibles

Escalables. Insercin de nuevos filtros. Simplicidad

DESVENTAJAS
No aconsejado para cuando se necesita interactividad.

Problemas de performance ya que los datos se


transmiten en forma completa entre filtros.

Frecuentemente derivan en organizaciones batch.

Fuerzan denominador comn en transmisin: Fuente


de ineficiencia y complejidad.

Sobre carga por transformacin de datos.

Manejo de errores.

BENEFICIOS

Flexibilidad de cambio de filtro. Flexibilidad por recombinacin.

Reutilizacin de los componentes del filtro.


La eficiencia mediante el procesamiento paralelo. Desarrollo de prototipos.

PROBLEMA
El sistema es una secuencia de transformaciones de los datos. La aplicacin debe descomponerse en varias partes.

Las transformaciones son: - bien ordenadas - sin estado interno -Independientes


Fuerzas: - Futuros cambios intercambiando algunos filtros. - Pequeas transformaciones son ms fcilmente reutilizadas. - Los datos pueden tener diferentes formatos.

SOLUCIN
Shaw:
- Modelo de sistema - Componentes - Conectores - Estructura de control Buschmann: El sistema se divide en varios pasos secuenciales de procesamiento los pasos se conectan con flujos de datos cada filtro consume y procesa sus datos en forma incremental, el origen de los datos, el destino y los filtros se conectan con tubos que implementan el flujo de datos entre pasos de procesamiento. Flujo de datos entre componentes Filtros (transformaciones, procesamiento local, asncrono) Tubos (streams) Flujo de datos.

DINMICA
Escenario 1. La fuente de datos empuja los datos. La actividad se inicia con la fuente de datos que enva los datos a la tubera.

DINMICA
Escenario 2. El sumidero hala los datos. La actividad se inicia con el receptor de los datos de extraccin de datos de la tubera.

DINMICA
Escenario 3. Mezcla de push /pull, en la que el segundo filtro inicia el pipeline. La actividad se inicia y es controlado por Filtro2.

DINMICA
Escenario 4. Todos los filtros estn activos en un ciclo y cada uno en su propio hilo de control. Todos los filtros de forma activa tiran y empujan los datos en un bucle. Los filtros se ejecutan en subprocesos independientes. Sincronizacin a travs de tubera de almacenamiento en bfer.

IMPLEMENTACIN
Dividir las tareas en una secuencia de pasos de procesamiento. -Los procesos deben ser independientes y ordenados. Definir el formato de los datos transmitidos a travs de cada pipe. -Flexibilidad vs. performance. Decidir implementacin de cada tubo. -Determinar la implementacin de los filtros (activos o pasivos). Disear e implementar los filtros. Disear poltica de errores. Instalar el sistema.

INTEGRACIN DE PIPES AND FILTERS CON BIZTALK SERVER 2009


Es un servidor de gestin de procesos de negocios (BPM). Procesamiento de mensajes manteniendo independencia y flexibilidad.

IMPLEMENTACIN DE PIPES AND FILTERS CON BIZTALK SERVER 2009


BizTalk Server implementa el patrn de Pipes and Filters, en sus pipelines de entrada y salidas.

BizTalk define etapas en el pipeline de entradas y salidas. Estas etapas dan un marco conceptual al tipo de transformacin que el mensaje debera recibir en cada una de ellas.

Las etapas del pipeline de entrada son: Decode: Para decodificar mensajes.

Disassemble: Normaliza los mensajes que llegan en un formato diferente al XML. Validate: Valida un documento. Permite interceptar documentos que llegan por el canal y no son adecuados para ser procesados por el mismo.

Resolver Party: Verifica que el mensaje ha sido enviado por una fuente conocida.

Las etapas del pipeline de salida son: Pre-Assemble: Realiza procesamiento de mensaje antes de ser ensamblado para su envo.

Assemble: Ensambla el documento en una XML u otro formato necesario de salida.

Encode: Para codificar y firmar digitalmente el mensaje de salida.

En conclusin: Decodificar el mensaje es el primer paso que se realiza en el Receive Pipeline. Codificarlo es ltimo paso que se realiza en el Send Pipeline. Todo el resto de los filtros en el pipeline pueden trabajar en mensajes que no estn codificados.

CONCLUSIN

Estilo fuertemente orientado a la transformacin de datos. Se desea que las transformaciones sucesivas estn desacopladas. El modelo arquitectnico resultante es tremendamente algortmico. La relacin con la vista de mdulos es bastante directa.

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