Saltar al contenido

Conservar Datos Mediante Variables de Proyecto, Almacenamiento en Caché en la Nube o Almacenamiento Temporal

Introducción

Se pueden usar varios métodos para almacenar datos en la nube de Harmony, como usar variables de proyecto, usar funciones de almacenamiento en caché en la nube o usar almacenamiento temporal.

Variables del Proyecto

Las variables del proyecto son variables estáticas preiniciadas que se pueden considerar como constantes del proyecto. Se pueden editar desde Cloud Studio (consulte Variables del proyecto) o la Management Console (vea Proyectos).

Un ejemplo de uso de las variables del proyecto es para las credenciales de extremo. Mediante el uso de variables de proyecto, se pueden aplicar diferentes ambientes de extremo (que generalmente tienen diferentes credenciales) a diferentes ambientes de Harmony y editado a través de Management Console. Esto habilita un proceso comercial en el que un usuario con derechos de Management Console puede cambiar las credenciales sin necesidad de acceder a Cloud Studio y al diseñador del proyecto.

Un segundo ejemplo es usar variables de proyecto para contener banderas usadas por la lógica de integración que puede personalizar el comportamiento de la integración. Si se desarrolla un solo proyecto pero se usa para diferentes extremos, entonces la lógica de la transformación podría verificar una variable de proyecto booleana (como Send_PO_Number) para el campo PO Number. Si el valor de la variable del proyecto es false, entonces el UnMap podría usarse para "desactivar" ese campo y no incluirlo en una transformación relevante.

Funciones de Almacenamiento en Caché en la Nube

Las funciones de almacenamiento en caché de la nube ReadCache y WriteCache se utilizan para asignar espacios de datos que están disponibles en todos los proyectos y ambientes. Un valor en caché es visible para todas las operaciones que se ejecutan en el mismo ámbito hasta que caduca, independientemente de cómo se inició esa operación o en qué agente se ejecuta. Al almacenar datos en caché en Harmony, en lugar de depender de almacenes de datos locales o específicos del agente, como Almacenamiento temporal, los datos se pueden compartir entre operaciones separadas y entre proyectos.

Estos son usos adicionales del almacenamiento en caché en la nube:

  • Los datos se pueden compartir entre operaciones asincrónicas dentro de un proyecto.
  • Los errores que se generan a través de diferentes operaciones podrían almacenarse en un caché común. Al acumular los resultados de las operación de esta manera, se pueden crear alertas más completas.
  • Los tokens de inicio de sesión se pueden compartir entre operaciones.

Almacenamiento Temporal

Almacenamiento temporal los extremos se utilizan con frecuencia en operaciones tanto en la nube como en Agentes Privados. Estos son distintos de Almacenamiento local extremos, que sólo se pueden utilizar en Agentes Privados.

Cuando se utiliza un extremo de almacenamiento temporal, los archivos temporales se escriben y se leen en el directorio temporal del sistema operativo predeterminado en el agente que realiza el trabajo:

  • En el caso de un único Agente Privado, el directorio de almacenamiento temporal es el directorio temporal predeterminado del servidor de ese Agente Privado.
  • Si utiliza más de un Agente Privado, agrupado en un Grupo de Agentes Privados, el directorio de almacenamiento temporal es el directorio temporal predeterminado del servidor de Agente Privado específico que realiza el trabajo.
  • Como los Agentes en Nube están agrupados en un Grupo de Agentes en Nube, el directorio de almacenamiento temporal es el directorio temporal predeterminado del servidor de Agente en Nube específico que realiza el trabajo.

En un Grupo de Agentes en clúster ( Agentes en Nube), siempre que las operaciones que utilizan el almacenamiento temporal estén vinculadas (encadenadas), todas las lecturas y escrituras del almacenamiento temporal se realizarán en el mismo servidor de agente. Sin embargo, si Chain A escribe en su almacenamiento temporal myfile y Chain B lee de su almacenamiento temporal myfile, y las dos cadenas no están encadenadas entre sí, es posible que la acción de lectura de almacenamiento temporal en la Cadena B no se lea desde el mismo agente en el que escribió la Cadena A.

Cuando utilice el almacenamiento temporal, tenga en cuenta estas pautas:

  • Cuando use Agentes Privados, para hacer que su proyecto sea a prueba de actualizaciones, use almacenamiento temporal de tal manera que pasar de un solo Agente Privado a un Grupo de Agentes múltiples no requiera refactorización.

  • Cuando utilice un Grupo de Agentes en clúster ( Agentes en Nube), para asegurarse de que el servidor del agente donde se escribe el almacenamiento temporal sea el mismo servidor desde el que se leerá el almacenamiento temporal, asegúrese de que todas las referencias al almacenamiento temporal Leer* Las actividades * y **Escribir están en la misma cadena de operación.

  • El Servicio de limpieza de archivos Jitterbit elimina el almacenamiento temporal en Agentes Privados después de 24 horas de forma predeterminada. La frecuencia del servicio de limpieza se puede configurar a través del Archivo de configuración del Agente Privado bajo la [FileCleanup] sección. Sin embargo, en Agentes en Nube, los archivos temporales pueden eliminarse inmediatamente.

  • Los Agentes en Nube tienen un límite de tamaño de archivo de almacenamiento temporal de 50 GB por archivo. Los archivos temporales de más de 50 GB solo son posibles cuando se utilizan Agentes Privados.

  • Al escribir en el almacenamiento temporal, el valor predeterminado es sobrescribir archivos. Esto se puede cambiar con la casilla de verificación Agregar a archivo en una actividad de escritura de almacenamiento temporal. Por lo general, esto requiere que, después de leer la fuente, se elimine o archive el archivo. Una forma sencilla de hacerlo es utilizar las opciones de posprocesamiento Eliminar archivo o Renombrar archivo en una actividad de lectura de almacenamiento temporal.

  • Palabras clave de nombre de archivo están disponibles y se pueden usar al crear un nombre de archivo.

  • Un archivo en el almacenamiento temporal se puede leer creando un secuencia de comandos con el ReadFile función. Por ejemplo: ReadFile("<TAG>activity:tempstorage/Temporary Storage/tempstorage_read/Read</TAG>"). Tenga en cuenta que esto funciona de manera confiable solo si hay un solo Agente Privado.

En algunos casos, puede ser ventajoso utilizar una Variable extremo en lugar de un extremo de almacenamiento temporal. Ver la sección Almacenamiento Variable versus Almacenamiento Temporal en Variable global frente a almacenamiento temporal para una comparación de estos dos enfoques diferentes y para recomendaciones sobre cuándo es apropiado cada uno.