Skip to main content

Automatizar flujos de trabajo con ArcGIS Notebooks

ArcGIS Notebook Server le permite implementar varios métodos de automatización de flujos de trabajo, incluida la automatización a través de notebooks programados, webhooks y sus scripts personalizados con Ejecutar la API administrativa del notebook.

Nota:

Para automatizar un notebook con tareas programadas, webhooks o la API Ejecutar notebook, el notebook debe usar un tiempo de ejecución de la versión 3.0 o posterior.

Programar tareas de notebook

Los autores de notebooks pueden programar notebooks de ArcGIS para su ejecución automática en un momento dado en el futuro, ya sea una vez o de forma recurrente. La creación de tareas para programar notebooks permite automatizar flujos de trabajo rutinarios, ejecutar procesos intensivos en datos fuera de las horas punta de uso y actualizar datasets regularmente. Por ejemplo, puede programar un notebook para hacer lo siguiente:

  • Importar datos de una fuente en línea actualizada mensualmente, limpiar automáticamente los datos y aplicar las transformaciones necesarias y mover los datos a su espacio de trabajo.

  • Ejecutar un flujo de trabajo de análisis de big data que requiera una gran potencia de procesamiento durante la noche, cuando los recursos de su equipo no se utilicen.

  • Administrar los usuarios que hayan creado cuentas en su organización durante la semana anterior y enviarse la lista de los mismos en un correo electrónico.

Puede crear una o varias tareas para un notebook. De forma predeterminada, el autor o administrador del notebook puede crear un máximo de 20 tareas. Si se cambia la propiedad de un notebook, las tareas asociadas a ese notebook se desactivarán y se asignarán al nuevo propietario.

Las tareas programadas le permiten parametrizar notebooks. Cuando un notebook está parametrizado, le permite escribir código genérico que se puede adaptar a distintas entradas sin su interacción. Los parámetros elegidos se insertan en el notebook cuando se ejecuta una tarea y se pueden guardar opcionalmente en el notebook. Por ejemplo, un notebook parametrizado se puede usar para generar informes de contaminación del aire a nivel de región de forma recurrente. El notebook puede tener varias tareas programadas, una para cada región que se estudiará y, para cada tarea, se pueden introducir entradas parametrizadas en el notebook, como el nombre de la ciudad y el tipo de contaminación.

Nota:

El número de tareas de notebook que se ejecutan simultáneamente está limitado por la propiedad del sistema maxExecuteNotebookContainersPerNode en Notebook Server.

Puede configurar la tarea para guardar el estado del notebook en el elemento de notebook original una vez completada.

Se guardará una vista HTML estática del notebook para cada tarea programada que se ejecute.

Al utilizar la ventana Administrar tareas desde la página de inicio de ArcGIS Notebook Server o la página Tareas de ArcGIS Notebook Server Manager, los administradores pueden ver detalles, editar, pausar y reanudar o eliminar cada tarea de notebook activa en el sitio. Los administradores y autores de notebooks con el privilegio programado del notebook pueden ver detalles, editar, pausar y reanudar, o eliminar una tarea del notebook en la página de detalles del notebook o en el panel de tareas del editor del notebook.

Si aún se está ejecutando una ejecución anterior de una tarea, se omitirá la ejecución de una nueva tarea programada. Por ejemplo, si una tarea está programada para ejecutarse cada 15 minutos, pero una instancia de esa tarea se ejecuta durante 20 minutos, se omitirá la siguiente ejecución programada. Si esto ocurre regularmente, el propietario de la tarea debe ajustar el intervalo de tiempo programado para que no se ejecute ninguna superposición entre ellas.

Para obtener más información sobre las tareas programadas de notebook, consulte el tema de ayuda Programar una tarea de notebook.

Límites de tareas programadas

Existen ciertos límites a nivel de usuario, organización y sitio de ArcGIS Notebook Server (equipo) relacionados con las tareas de notebook programadas.

Cambiar ejecuciones máximas de notebooks simultáneas automatizadas (maxExecuteNotebookContainersPerNode)

Cuando un notebook se ejecuta mediante una tarea programada, un webhook o la Ejecutar la API de Notebook, ArcGIS Notebook Server abre automáticamente un nuevo contenedor y ejecuta el notebook sin necesidad de intervención por parte del usuario. De forma predeterminada, ArcGIS Notebook Server está configurado para ejecutar un máximo de 10 notebooks concurrentes para cada equipo de Notebook Server. Teniendo en cuenta los recursos (CPU y RAM) disponibles en cada equipo del sitio de Notebook Server, el administrador puede ajustar este límite modificando la propiedad del sistema maxExecuteNotebookContainersPerNode en Notebook Server. Cualquier solicitud de notebook automatizada enviada después de exceder este límite se agregará a una cola y se ejecutará una vez que la cantidad de ejecuciones de tareas automatizadas caiga por debajo de este límite. Las tareas en cola fallarán si el tiempo de espera excede el tiempo de expiración.

Nota:

Esto no limita la cantidad de notebooks que se ejecutan de forma interactiva desde el editor de notebooks.

Puede cambiar el límite maxExecuteNotebookContainersPerNode siguiendo los pasos siguientes.

Nota:

Aumentar el límite puede suponer un consumo adicional de recursos en el equipo de Notebook Server.

  1. Inicie sesión en el portal de ArcGIS Enterprise como administrador.

  2. Abra ArcGIS Notebook Server Manager.

  3. Haga clic en Configuración > Sitio.

  4. Cambie el valor de la propiedad maxExecuteNotebookContainersPerNode.

  5. Haga clic en Guardar.

  6. Revise la advertencia sobre el reinicio de Notebook Server y haga clic en Guardar y reiniciar para guardar los cambios.

Máximo de tareas de notebook activas programadas por usuario

Cada autor de notebook con el privilegio para programar notebooks puede crear hasta un máximo de 20 tareas de notebook activas. Una vez alcanzado este límite, el usuario no puede crear nuevas tareas programadas. Se puede crear una nueva tarea una vez que una tarea existente cambia de Activa a Completada, Fallida o Inactiva. Este límite se puede cambiar actualizando la propiedad ExecuteNotebooksUserLimit mediante la operación Actualizar límites del sistema en la API de administrador del portal de ArcGIS.

Máximo de tareas de notebook activas programadas por organización

El número máximo de tareas de notebook activas programadas para una organización está limitado a 200. Este límite representa el número total de tareas activas que pueden ser propiedad de todos los usuarios de una organización. Una vez alcanzado este límite, los usuarios no pueden crear nuevas tareas de notebook programadas. Este límite se puede cambiar actualizando la operación Actualizar límites del sistema ExecuteNotebooksOrgLimit en la API de administrador del portal de ArcGIS.

Número de resultados informados para una tarea programada

Los resultados de una tarea se informan y mantienen durante 30 ejecuciones. Cualquier tarea ejecutada antes de las 30 ejecuciones más recientes de una tarea se elimina de forma permanente. Este límite se puede cambiar actualizando la propiedad TaskRunHistoryCount mediante la operación Actualizar límites del sistema en la API de administrador del portal de ArcGIS.

Fallo automático de una tarea

Cualquier tarea que falle cinco veces consecutivas pasará automáticamente a un estado fallido y ya no se ejecutará. El propietario de la tarea debe asegurarse de que el notebook se puede ejecutar correctamente sin que intervenga el usuario antes de reactivar la tarea. Para garantizar que las tareas sigan ejecutándose, el propietario de la tarea debe identificar y rectificar el error y cambiar la tarea al estado Activo. Este límite se puede cambiar actualizando la propiedad FailedRunsDisableTask mediante la operación Actualizar límites del sistema en la API de administrador del portal de ArcGIS.

Ejecutar la API de notebook

Los administradores y los creadores de notebooks también pueden automatizar un notebook para que se ejecute sin interacción del usuario con la operación Ejecutar notebook en el Directorio de administrador de ArcGIS Notebook Server. Esta operación ejecutará automáticamente un notebook cuando se invoque, pero si utiliza un script personalizado, puede programar que la ejecución automática se produzca a una hora determinada o en un horario regular. También puede utilizar un trabajo de cron o un programador de Windows para programar que la operación Ejecutar notebook se ejecute a una hora determinada o según un intervalo recurrente.

Para más información, consulte el tema de la operación Ejecutar notebook en la guía de referencia del Directorio de administrador.