La tarea Flujo de datos encapsula el motor de flujo de datos que mueve datos entre orígenes y destinos, y permite al usuario transformar, limpiar y modificar datos a medida que se mueven. Agregar una tarea Flujo de datos a un flujo de control de paquetes permite que el paquete extraiga, transforme y cargue datos.
Un flujo de datos se compone de por lo menos un componente de flujo de datos, pero normalmente es un conjunto de componentes de flujo de datos conectados: orígenes que extraen datos, transformaciones que modifican, enrutan o resumen datos, y destinos que cargan datos. Los componentes están conectados en el flujo de datos mediante rutas. Cada ruta especifica los dos componentes que son el inicio y el final de la ruta. Para obtener más información, vea Elementos de flujo de datos.
En el tiempo de ejecución, la tarea Flujo de datos genera un plan de ejecución a partir del flujo de datos y el motor de flujo de datos ejecuta el plan. Se puede crear una tarea Flujo de datos que no tenga flujo de datos, pero la tarea sólo se ejecuta si incluye por lo menos un flujo de datos.
El siguiente diagrama muestra una tarea Flujo de datos con un flujo de datos.
Una tarea Flujo de datos puede incluir varios flujos de datos. Si una tarea copia varios conjuntos de datos, y si el orden en que los datos se copian no es significativo, puede ser más conveniente incluir varios flujos de datos en la tarea Flujo de datos. Por ejemplo, puede crear cinco flujos de datos, y cada uno de ellos copiaría datos de un archivo plano en una tabla de dimensiones diferente en un esquema de estrella de almacén de datos.
Sin embargo, el motor de flujo de datos determina el orden de ejecución cuando existen varios flujos de datos dentro de una tarea de flujo de datos. Por tanto, cuando el orden es importante, el paquete debe usar varias tareas Flujo de datos, cada una de las cuales contiene un flujo de datos. En ese caso, puede aplicar restricciones de precedencia para controlar el orden de ejecución de las tareas.
Los siguientes diagramas muestran una tarea Flujo de datos con varios flujos de datos.


Un paquete puede contener varias tareas Flujo de datos, lo que es frecuente en los paquetes complejos. Por ejemplo, si un paquete requiere que los flujos de datos se ejecuten en un orden especificado, o que se realicen otras tareas entre los flujos de datos, debe utilizar una tarea Flujo de datos independiente para cada flujo de datos.
La tarea Flujo de datos también administra los flujos de errores. En el tiempo de ejecución, pueden generarse errores de nivel de fila cuando los componentes del flujo de datos convierten datos, realizan una búsqueda o evalúan expresiones. Por ejemplo, una columna de datos con un valor de cadena no puede convertirse en un número entero, o una expresión intenta dividirse por cero. Ambas operaciones generan errores, y las filas que contienen los errores se pueden procesar independientemente mediante un flujo de errores. Para obtener más información acerca de cómo utilizar los flujos de errores en el flujo de datos de paquetes, vea Controlar errores en los datos.
La tarea Flujo de datos también administra los flujos de errores. En el tiempo de ejecución, pueden generarse errores de nivel de fila cuando los componentes del flujo de datos convierten datos, realizan una búsqueda o evalúan expresiones. Por ejemplo, una columna de datos con un valor de cadena no puede convertirse en un número entero, o una expresión intenta dividirse por cero. Ambas operaciones generan errores, y las filas que contienen los errores se pueden procesar independientemente mediante un flujo de errores. Para obtener más información acerca de cómo utilizar los flujos de errores en el flujo de datos de paquetes, vea Controlar errores en los datos.
Para realizar una inserción masiva de datos de archivos de texto en una base de datos de SQL Server, puede usar la tarea Inserción masiva en lugar de la tarea Flujo de datos y un flujo de datos. Sin embargo, la tarea Inserción masiva no transforma datos. Para obtener más información, vea Tarea Inserción masiva.
Usar expresiones de propiedad con elementos de flujo de datos
Algunos de los componentes de flujo de datos (orígenes, transformaciones y destinos) admiten el uso de expresiones de propiedad en algunas de sus propiedades. Una expresión de propiedad es una expresión que reemplaza el valor de la propiedad cuando se carga el paquete. El paquete utiliza los valores actualizados de las propiedades en tiempo de ejecución. Las expresiones de propiedad se generan con la sintaxis de expresiones de Integration Services y pueden incluir funciones, operadores, identificadores y variables de Integration Services. Para obtener más información, vea Referencia de expresiones de Integration Services, Usar expresiones en paquetes y Usar expresiones de propiedad en paquetes.
Si genera un paquete en Business Intelligence Development Studio, las propiedades de todos los componentes de flujo de datos que admiten expresiones de propiedad se muestran en la tarea Flujo de datos a la que pertenecen. Para agregar, cambiar y quitar las expresiones de propiedad de componentes de flujo de datos, haga clic en la tarea Flujo de datos y, a continuación, utilice la ventana Propiedades o el editor de la tarea a fin de agregar, cambiar o eliminar expresiones de propiedad. Las expresiones de propiedad de la tarea Flujo de datos en sí se administran en la ventana Propiedades.
Si el flujo de datos contiene componentes que usan expresiones, estas expresiones se exponen también en la ventana Propiedades. Para ver las expresiones, seleccione la tarea Flujo de datos a la que pertenece el componente. Puede ver las propiedades por categoría o en orden alfabético. Si utiliza la vista por categorías de la ventana Propiedades, las expresiones que no se usan en ninguna propiedad específica se enumeran en la categoría Varios. Si utiliza la vista alfabética, las expresiones se enumeran en orden por el nombre del componente de flujo de datos.
No hay comentarios:
Publicar un comentario