Automatice la transformación de datos con el servidor FlowForce
Altova diseñó FlowForce Server para proporcionar una automatización, gestión y control exhaustivos sobre las transformaciones de datos realizadas por servidores de alto rendimiento dedicados. La versión beta 3 de FlowForce Server está disponible de forma gratuita para los usuarios de las ediciones Enterprise y Professional de MapForce durante el período de prueba beta. El servidor FlowForce puede automatizar el procesamiento de datos en carpetas específicas y mantiene un registro detallado de las actividades, que los usuarios pueden supervisar de forma remota a través de una ventana de navegador web. La captura de pantalla que se muestra a continuación muestra el registro del servidor FlowForce, que está ejecutando la función de mapeo de datos MapForce llamada CameraLogToGPX, de la cual hablamos en la publicación del blog titulada Procesar múltiples archivos de entrada en un único mapeo de datos. Esta configuración utilizaba caracteres comodín para especificar múltiples archivos de entrada que debían ser procesados.

Solo se necesitan unos minutos para configurar, ejecutar y revisar los resultados de tareas como esta en el servidor FlowForce.
¿Comodines o carpetas activas? Los comodines y las carpetas activas aumentan la complejidad de un flujo de trabajo de transformación de datos, y su uso exitoso requiere una planificación cuidadosa. Dediquemos un momento a analizar más a fondo el escenario que queremos implementar. Supongamos que somos el departamento de TI de una empresa que publica guías de naturaleza y senderismo. Contamos con fotógrafos que realizan excursiones y registran sus rutas mientras avanzan, utilizando la función de seguimiento GPS de sus cámaras digitales. Queremos convertir los archivos de registro GPS de las cámaras a un formato .gpx basado en XML para su uso en mapas y otros procesos. Publicaremos una carpeta en nuestra red donde los fotógrafos puedan dejar sus archivos de registro GPS. Esta será la carpeta activa que FlowForce Server monitorizará para detectar nuevos archivos que se utilizarán como entrada para la conversión de los registros de la cámara al formato GPX. Solo necesitamos procesar cada archivo de entrada una vez. Por lo tanto, una vez que la transformación de datos se haya completado, podemos eliminar el archivo de entrada de la carpeta activa. También queremos colocar el archivo de salida en una carpeta separada. Esto sugiere los siguientes pasos del trabajo en FlowForce Server:
- Revise la carpeta designada para archivos entrantes para verificar si se han recibido nuevos archivos
- Realice la asignación de datos en el archivo de entrada y guarde el archivo de salida en una carpeta separada
- Mueva el archivo de entrada a una ubicación permanente
El diagrama que se muestra a continuación ilustra una estructura de carpetas que podemos utilizar para el flujo de trabajo, con archivos listos para ser colocados en la carpeta designada para su procesamiento:

La carpeta activa es C:CameraGPShotFolder y los archivos .gpx generados se colocarán en C:CameraGPSoutputFiles. Una vez que se complete el mapeo de datos, los archivos de entrada se moverán a C:CameraGPScompletedInput.
Implementar el mapeo en un servidor MapForce Beta es un componente de FlowForce Server que funciona de manera similar a MapForce, y añade la función de implementar archivos de mapeo en un servidor FlowForce. Los mapeos de datos existentes no requieren una preparación especial para su implementación. Lo único que debemos considerar son los nombres de los archivos de entrada y salida. Instruiremos a FlowForce Server para que proporcione el nombre del archivo de entrada como un parámetro del trabajo, a medida que lleguen nuevos archivos a la carpeta activa para su procesamiento. El mapeo original asignaba un nombre de archivo comodín para el componente de entrada, lo cual ya no es necesario. También queremos que FlowForce especifique la ubicación del archivo de salida. Podemos abrir el mapeo en MapForce Beta, eliminar el nombre de archivo del componente de entrada y añadir una función de ruta de carpeta de salida al archivo de salida, para que el servidor FlowForce pueda establecer el destino. La captura de pantalla a continuación muestra las nuevas definiciones de nombres de archivo en el mapeo.

En el diálogo de MapForce Beta para implementar la transformación, podemos elegir abrir inmediatamente la transformación en una ventana de definición de trabajo de FlowForce Server en un navegador web, para así completar la definición de las operaciones del trabajo.

Definición de la tarea en FlowForce Server La captura de pantalla que se muestra a continuación ilustra los pasos completos de una tarea definidos en la ventana de propiedades de una tarea en FlowForce Server:

El disparador del trabajo se define en la parte inferior de la ventana. Cada 30 segundos, el servidor FlowForce comprobará la carpeta designada. Si el contenido ha cambiado, el servidor FlowForce ejecutará los pasos del trabajo. Cada paso de ejecución puede ser un mapeo MapForce implementado, un paso del sistema, o incluso otro trabajo de FlowForce Server. El nombre de cada nuevo archivo que entra en la carpeta designada se convierte en el parámetro llamado , que utilizamos en el paso de mapeo como el nombre del archivo de entrada, y en el paso de movimiento como el nombre del archivo que se va a mover. El parámetro "Directorio de trabajo" en el paso de mapeo define dónde se colocarán los archivos de salida. El servidor FlowForce también incluye funciones para establecer tiempos automáticos de inicio y fin para los trabajos, permisos y roles de usuario, y configuraciones de cola para definir el tiempo mínimo entre ejecuciones de trabajos y el número máximo de instancias paralelas de un trabajo. En nuestro escenario, es probable que recibamos múltiples archivos de entrada en grupos, ya que se copian de las tarjetas de memoria de los fotógrafos. Las múltiples ejecuciones paralelas pueden mejorar significativamente el rendimiento. Como regla general, es recomendable que el número de núcleos o procesadores de la máquina que ejecuta FlowForce Server coincida con el número de trabajos paralelos que se van a ejecutar.

Explorando el registro de tareas
Cada vez que el servidor FlowForce ejecuta nuestra tarea, se añaden seis líneas a la vista de registro que se muestra en la ilustración que aparece al principio de este texto. La primera y la última línea registran el inicio y la finalización de la tarea, y cada etapa de ejecución genera sus propios mensajes de inicio y finalización. La frase "completado con estado: 0" significa que la etapa se completó con éxito y sin errores.

Podemos hacer clic en los enlaces "más" para obtener un informe detallado de cada etapa de la ejecución. La captura de pantalla que se muestra a continuación muestra el mensaje correspondiente a la etapa de ejecución de la transformación en MapForce:

Cada archivo que se coloca en la carpeta de "hot folder" genera una instancia individual de un trabajo en FlowForce Server, incluso si se añaden varios archivos como un grupo. Esto facilita el seguimiento de cualquier archivo de entrada que genere un error. Cuando colocamos cuatro archivos en la carpeta de "hot folder", FlowForce Server ejecutó cuatro trabajos, y el contenido de la carpeta de salida se veía así:
