Adaptadores de entrada y salida (modelo heredado)

 

Los adaptadores de entrada y de salida se presentaron en una versión anterior de StreamInsight. Aunque han quedado sustituidos por el modelo de desarrollo actual, siguen estando disponibles para los desarrolladores que realizan el mantenimiento de código heredado. Esta sección proporciona información sobre este modelo heredado. Para obtener más información acerca del modelo de desarrollo actual, vea Guía del desarrollador de software (StreamInsight).

Los adaptadores convierten y suministran flujos de eventos entrantes y salientes que tienen como origen o destino el servidor de StreamInsight. StreamInsight proporciona un SDK de adaptadores extremadamente flexible que permite generar adaptadores para dispositivos de salida (receptores) y orígenes de eventos específicos del dominio. Los adaptadores se implementan en el lenguaje de programación C# y se almacenan como ensamblados. Las clases de adaptadores se crean como plantillas durante el tiempo de diseño, se registran en el servidor de StreamInsight y sus instancias se crean en el servidor durante el tiempo de ejecución como instancias de adaptador.

Adaptadores de entrada

Una instancia de un adaptador de entrada acepta flujos de eventos de entrada procedentes de orígenes externos como bases de datos, archivos, fuentes de tableros de cotizaciones, puertos de red, sensores, etc. El adaptador de entrada lee los eventos de entrada en el formato en que se proporcionan y transforma estos datos en un formato de evento compatible con el servidor de StreamInsight.

Debe crear un adaptador de entrada para administrar los orígenes de eventos concretos para el origen de datos. Si el origen de eventos solo genera un único tipo de evento, el adaptador puede tener tipo. Es decir, se puede implementar para emitir eventos de un tipo de evento determinado. Con un adaptador con tipo, todas las instancias del adaptador crean el mismo formato de carga fijo, en el que se conoce de antemano el número de campos y sus tipos. Son ejemplos de este tipo de eventos los datos de fuentes de símbolo del valor o datos de sensor emitidos por un dispositivo concreto. Si el origen de eventos emite tipos distintos en función de las circunstancias, es decir, si los eventos pueden contener formatos de carga diferentes o no se puede conocer el formato de carga de antemano, debe implementar un adaptador sin tipo. Con un adaptador sin tipo (genérico), el formato de carga de evento se proporciona al adaptador como parte de una especificación de configuración en el tiempo de enlace de consultas. Son ejemplos de dichos orígenes los archivos CSV que contienen un número variable de campos y en los que el tipo de los datos almacenados en el archivo no se conoce hasta el momento de creación de instancias de consulta, o los adaptadores para tablas de database or your report server without the permission of the system administrator. en los que los eventos generados dependen del esquema de la tabla. Es importante tener en cuenta que, en tiempo de ejecución, una instancia de un adaptador única, con o sin tipo, siempre emite eventos de un tipo específico. Los adaptadores sin tipo proporcionan una implementación flexible para aceptar la especificación de tipo de evento en el momento de enlace de consulta, en lugar de definir el tipo de evento en el momento de la implementación del adaptador.

Adaptadores de salida

Debe crear un adaptador de salida para recibir los eventos procesados por el servidor de StreamInsight, transformarlos en un formato compatible con el dispositivo de salida (receptor), y emitirlos a ese dispositivo. El diseño y creación de un adaptador de salida son parecidos al diseño y creación de un adaptador de entrada. Los adaptadores de salida con tipo se diseñan con respecto a una carga de evento específica, en tanto que los adaptadores de salida sin tipo solamente reciben el tipo de evento en tiempo de ejecución, cuando se crean instancias de la consulta.

Para obtener más información, vea Crear adaptadores de entrada y de salida. La API de adaptador básica proporciona la máxima flexibilidad para la implementación con respecto a cualquier origen o receptor del evento. Además, StreamInsight admite orígenes y receptores de eventos en un nivel de abstracción superior que implementa las interfaces IObservable o IEnumerable. Para obtener más información, vea Usar orígenes y receptores de eventos (StreamInsight).

Vea también

Papel de los adaptadores en la arquitectura de servidor de StreamInsight
Crear adaptadores de entrada y de salida