Skip To Content

Un recorrido rápido por los servicios de creación e intercambio

Crear un servicio de geoprocesamiento implica la creación de las tareas en el servicio. Crear una tarea significa seleccionar o crear una herramienta, definir de los parámetros de entrada y de salida de la tarea y la ubicación de los datos utilizados por la tarea. Estos son los pasos con un poco más detalles:

  • Seleccionar una o más herramientas de geoprocesamiento que se convertiráa en la las tareas del servicio. Puede utilizar una de las muchas herramientas del sistema que se proporcionan con ArcGIS o crear sus propias herramientas con la secuencia de comandos de ModelBuilder o de Python.
  • Recopilar los datos de entrada necesarios para ejecutar la herramienta. Por lo general, estos datasets son capas de la tabla de contenido de ArcMap.
  • Ejecutar la herramienta crea un resultado en la ventana Resultados.
  • La definición de la simbología de los datasets de entrada y de salida, si es necesario.
  • Compartir el resultado como un servicio de geoprocesamiento. Cuando comparte un resultado, puede utilizar el Editor de servicio para definir los modos de los datasets de entrada (que se describe a continuación) junto con otras propiedades del servicio y sus tareas.

Ejemplo: un simple modelo de oferta y demanda

A continuación se ilustra un ejemplo de una herramienta creada con ModelBuilder que se debe convertir en una tarea. El modelo (y tarea publicada) es un modelo de asignación muy simple de oferta y demanda; dado un conjunto de ubicaciones de punto que representan la oferta de servicios (como respuesta de emergencia o instalaciones al por menor) y otro conjunto de puntos que representa la demanda (como los hogares o las empresas que requieren el servicio), asigne los puntos de demanda a la instalación más cercana, cree un polígono de área de comercio para cada instalación y resuma todas las instalaciones de la demanda en el ámbito comercial. La salida es un conjunto de polígonos, un polígono para cada instalación de entrada con un atributo que contiene la demanda total dentro del polígono.

Un modelo de asignación de oferta y demanda simple

Tenga en cuenta que en el modelo anterior, las variables Instalaciones Demanda y Polígonos de Thiessen de salida son parámetros de modelo (tienen una P junto a ellas). Estos parámetros de modelo se convierten en los argumentos de tarea que los clientes de su tarea proporcionan cuando ejecutan la tarea.

Los parámetros de modelo aparecen en el cuadro de diálogo de la herramienta, como se ilustra a continuación, en el que la herramienta de modelo se abre desde la ventana Catálogo de ArcMap.

Una herramienta modelo abierta desde la ventana Catálogo para abrir el cuadro de diálogo de su herramienta

Cuando el modelo se ejecuta como una herramienta, se escribe un resultado en la ventana Resultados, como se ilustra a continuación. El resultado contiene toda la información que ArcGIS necesita para construir una tarea.

  • El nombre y la ubicación de la caja de herramientas y la herramienta que crearon el resultado.
  • La salida (ThiessenPolys1) producida al ejecutar la herramienta.
  • El esquema (el tipo de entidad y atributos) de la salida.
  • La simbología de la salida. En este ejemplo, la simbología de salida es un color graduado basado en la suma de la demanda dentro de cada polígono.
  • Las entradas para la herramienta (las capas de los sitios de materiales peligrosos y estaciones de bomberos).
  • El esquema (el tipo de entidad y atributos) de cada entrada. En este ejemplo, las Estaciones de bomberos tienen un atributo de texto: FacilityName. Los Sitios de materiales peligrosos también tienen un atributo: Demanda, un entero largo.
  • La simbología de la entrada. En el ejemplo, la capa Estaciones de bomberos se simboliza con un símbolo de la estación de bomberos para cada ubicación. y la demanda se simboliza con círculos graduados.
  • La configuración del entorno de geoprocesamiento que estuvo en efecto cuando se ejecutó la herramienta.

Un resultado contiene toda la información que ArcGIS necesita para construir una tarea de geoprocesamiento

Nota:
Los resultados no son creados al ejecutar un modelo desde dentro de ModelBuilder. Debe ejecutar el modelo utilizando su cuadro de diálogo de la herramienta o con la ventana Python para que se cree un resultado.

Otro aspecto importante de un resultado es que forma parte de una sesión de ArcMap y por tanto tiene acceso a todas las capas y tablas de la Tabla de contenido y la tarea publicada también puede tener acceso a estas capas. La Tabla de contenidoque se ilustra antes solamente contiene las dos capas de entrada y salida, pero podría contener muchas más capas (como una capa de ubicaciones al por menor) que pueden estar disponibles para los clientes de la tarea.

Un servicio de geoprocesamiento y su tarea inicial se crean haciendo clic con el botón derecho en un resultado y eligiendo Compartir como > Servicio de geoprocesamiento. Esto abre el asistente Compartir como servicio y después seleccionar una conexión al servidor y elegir un nombre para el servicio, el Editor de servicio se abre. El Editor de servicio es donde se definen las propiedades y la configuración del servicio, así como las propiedades los parámetros de cada tarea individual. La siguiente ilustración muestra cómo establecer el modo de entrada del parámetro Instalaciones. En este ejemplo, el modo de entrada se ha definido como Valor definido por el usuario, lo que significa que se espera que el cliente proporcione un conjunto de puntos con un atributo de texto FacilityName.

Definir el modo de entrada en el Editor de servicio

El punto principal es que el Editor de servicio le proporciona un buen nivel de control sobre la definición de las entradas y salidas de la tarea. Aunque esto se produce durante el proceso de compartir, puede tener repercusiones sobre cómo se crea la herramienta.

Ejemplo: otros modos de entrada

La herramienta Generar tabla próxima es una herramienta del sistema que calcula las entidades más cercanas de las entidades de entrada y devuelve los resultados en una tabla. En este ejemplo, Generar tabla próxima se utiliza para devolver todas las escuelas elementales, escuelas secundarias, estaciones de bomberos, tiendas de comestibles y tiendas minoristas dentro de cinco millas de cualquier punto de entrada. En este escenario, los puntos de entrada se consideran casas para venta, este es es un simple servicio destinado a ayudar a compradores de viviendas evaluar casas para la venta. Todas las entradas de dataset son capas en la tabla de contenido de ArcMap.

Utilizar la herramienta del sistema Generar tabla próxima para crear un resultado y compartir como un servicio

Cuando el resultado es compartida como una tarea de geoprocesamiento, lasEntidades próximas pueden ser una Lista de selección de las entidades cercanas a buscar, como se ilustra a continuación. El cliente debe especificar una o más de estas capas. Por ejemplo, es posible que el cliente solo esté interesado en las escuelas elementales y escuelas secundarias, pero ninguna de las otras capas.

Utilizar una lista de selección como el modo de entrada

O bien, como alternativa, las Entidades próximas pueden ser fijas, a Valor constante, en cuyo caso ya no es un argumento de la tarea y el cliente no tiene control sobre qué Entidades próximas se devuelven; siempre reciben una tabla de todas las entidades más cercanas.

Utilizar el valor constante como el modo de entrada

Modos de entrada

En los ejemplos anteriores, observó cómo configurar el modo de entrada es una decisión de creación y diseño de tarea importante. Establecer el modo de entrada es algo que hace en el Editor de servicio yq que se refiere solo a las tareas de geoprocesamiento y no la herramienta subyacente. Hay tres modos de entrada de las entidades de entrada:

  • Valor definido por el usuario: el cliente creará un conjunto de entidades que se transportará por Internet para que lo lea la tarea. Cuando el valor definido de usuario está especifidado, el tipo de entidad, los atributos, la referencia espacial y la simbología de la capa de entrada se almacenan con el conjunto de entidades. Los clientes pueden recuperar este esquema y utilizarlo para digitalizar entidades en el conjunto de entidades o cargar entidades desde un archivo en el disco en el conjunto de entidades. Para las tablas de entrada, existe un conjunto de registros correspondiente que almacena el esquema de atributos de la tabla.
  • Lista de selección: el cliente puede introducir los nombres de una (o varias) de las capas que marque en la lista de capas. Si el cliente puede introducir más de una capa depende de la herramienta. La herramienta Generar tabla próxima que se muestra arriba permite introducir varias capas de entrada. Otras herramientas, como Zona de influencia, solo permiten introducir una capa desde la lista de selección.
  • Valor constante: la tarea utilizará el valor que se especificó al ejecutarse la herramienta. Valor constante es igual que la eliminación del parámetro, la capa (dataset) se utiliza internamente por parte de la tarea y no está expuesta al cliente.

Más información sobre los modos y los tipos de datos de entrada

Ejemplo: herramienta de secuencia de comandos

También puede crear una tarea con una herramienta de secuencia de comandos. La siguiente ilustración muestra la página de propiedades de una herramienta de secuencia de comandos que hace exactamente el mismo trabajo que el modelo de oferta y demanda simple anterior, solo mediante Python en lugar de ModelBuilder. Tiene los mismos parámetros que el modelo y se utiliza el mismo procedimiento que para crear una tarea: ejecute la herramienta para crear un resultado y compártalo como un servicio de geoprocesamiento.

Página de propiedades de la herramienta de secuencia de comandos
Una herramienta de secuencia de comandos y sus propiedades de los parámetros

Datos de proyecto y el almacenamiento de datos

Datos de proyecto es un término que utiliza el geoprocesamiento para describir los datos de entrada que no son un parámetro; es decir, los datos no son proporcionados por el usuario de la herramienta o tarea, sino se utilizan internamente por la herramienta o tarea. Por ejemplo, la variable Dataset de red San Francisco en el modelo que se muestra a continuación es datos de proyecto porque se utiliza por el modelo pero no expone como un parámetro. Esencialmente, los datos del proyecto de modelo es un óvalo azul sin una P junto al mismo.

Proyectar los datos en un modelo

Los datos de proyecto pueden aparecer en secuencias de comandos, como se muestra en el siguiente fragmento de código de Python.

import arcpy  # The inputPoints variable is considered to be project data  #   since it is not an input parameter. #   inputPoints = r"c:\data\Toronto\residential.gdb\shelters"  arcpy.Buffer_analysis(inputPoints, 'shelterBuffers', '1500 Meters')

En el Editor de servicio, los datos de entrada que tiene un parámetro tienen un Modo de entrada de Valor constante equivalente a los datos del proyecto utilizados por la herramienta pero no expuesta como argumento de la tarea. Puede pensar de un modo de entrada de Constante como a la eliminación de P junto a la variable en ModelBuilder.

Los datos de proyecto son una consideración importante cuando se crea y comparte una tarea porque los datos de proyecto tienen que ser accesibles mediante el servidor cuando se ejecuta la tarea. Los servicios de geoprocesamiento tienden a utilizar muchos diferentes datos en diferentes ubicaciones. No es atípico que los problemas en su servicio se puedan atribuir a cuestiones de acceso a los datos de proyecto.

Cuando publica su resultado, la publicación de los procesos escanea todos los modelos y secuencias de comandos que se utilizan para producir el resultado y descubre los datos de proyecto. Entonces determina qué hacer con estos datos. Solo hay dos opciones:

  1. Si los datos de proyecto se pueden encontrar en el almacenamiento de datos del servidor, la tarea publicada utilizará los datos en el almacenamiento de datos.
  2. Si los datos de proyecto no se pueden encontrar en el almacenamiento de datos del servidor, se copian en el servidor, se colocan en una ubicación conocida accesible por el servidor (el directorio de entrada del servidor) y la tarea publicada utilizará el copiado los datos. Los datos copiados no forman parte del almacenamiento de datos del servidor. Si vuelve a publicar la tarea, los datos se copiarán de nuevo.

Acerca del almacenamiento de datos

Cada instalación de ArcGIS for Server contiene un almacenamiento de datos. El almacenamiento de datos es una forma de dar el servidor una lista de ubicaciones de datos que el servidor puede acceder. Cuando el servidor puede acceder a los datos, los datos que se encuentran en su equipo local no se copiarán en el servidor al publicar.

Para obtener más información sobre cómo registrar los datos con el ArcGIS for Server, consulte:

Nota:

Si la opción para copiar automáticamente los datos al publicar se ha deshabilitado, tendrá que registrar sus datos de entrada y salida de la tarea en el data store del servidor. Cuando se deshabilita la opción para copiar automáticamente los datos, no se pueden copiar en el servidor los datos necesarios para la tarea. Tendrá que registrar los datos en el data store del servidor, habilitar la copia automática de los datos en el servidor o modificar la tarea para que todas las entradas estén definidas por el usuario y todas las salidas se escriban en el espacio de trabajo de in_memory

Datos simples en, simple de los datos

Un servicio SIG debe funcionar con el cliente más sencillo: un navegador web que se ejecute en un ordenador sin ninguna de las prestaciones SIG. Los clientes tan simples saben cómo enviar paquetes de datos simples a un servidor, como texto, números, tablas y las entidades geográficas y sus atributos. Estos clientes no conocen las representaciones de datos geográficos más avanzadas que se utilizan en ArcGIS Desktop, como datasets de red, topologías, TIN, clases de relación, redes geométricas, etc. Estos datasets se conocen como datasets complejos; modelan complejas relaciones entre entidades simples. Los datasets complejos no se pueden transportar a través de Internet; solamente las entidades simples, las tablas, los rásteres y los archivos se pueden transportar.

Cuando se crea una tarea, debe saber que todos los clientes, ya sea aplicaciones web, Explorer for ArcGIS o ArcGIS Desktop solo saben enviar y recibir (transportar) estos datasets simples. Incluso si sabe que solo accederán a su servicio clientes sofisticados como ArcMap, cuando cree sus tareas seguirá estando limitado a los datos de entrada simples.

Consulte el tema Modos de entrada y los tipos de datos de parámetro para obtener más información acerca de datasets transportables y no transportables.

Los resultados de la tarea de dibujo con un servicio de mapas

Al publicar un servicio de geoprocesamiento, puede elegir visualizar el resultado de su tarea como un mapa (además de cualquier otro resultados de su tarea). El mapa se crea en el servidor con ArcMap y, a continuación, se transporta de vuelta al cliente. La simbología, el etiquetado, la transparencia y todas las demás propiedades del mapa devuelto son iguales que en la capa de salida en su sesión actual de ArcMap. El flujo de trabajo para crear un servicio de mapas de resultado es simple:

  • Ejecute la herramienta para crear un resultado en la ventana Resultados. Los datos creados por la herramienta se agregarán a la tabla de contenido de ArcMap como una capa.
  • Cambiar la simbología de las capas que son la salida de la herramienta .
  • Haga clic con el botón derecho en el resultado y compártalo como un servicio de geoprocesamiento.
  • En el Editor del servicio, haga clic en Parámetros y habilite Ver resultado con un servicio de mapas.

Si su capa de salida son los valores únicos de dibujo, es posible que necesite desactivar <todos los demás valores> en las propiedades de capa para forzar un nuevo cálculo de los valores únicos antes de dibujar. Consulte el tema Crear un archivo de simbología de capa para obtener más detalles.

Documentar su tarea

Proporcionar una buena documentación para su servicio y tareas es esencial si desea que el servicio sea descubierto, entendido y utilizado por la mayor audiencia posible.

Una buena documentación comienza con la herramienta que creó el resultado que publicará. Cada herramienta en el sistema tiene una descripción del elemento que puede visualizar uno editado al hacer clic con el botón derecho en la ventana Catálogo y elegir Descripción del elemento.

Más información acerca de la documentación, tareas y servicios de geoprocesamiento

Configuración del entorno de geoprocesamiento

La configuración del entorno de geoprocesamiento incluye parámetros adicionales que modifican los resultados de una herramienta. Estos parámetros difieren de los parámetros de herramientas normales en que no se muestran en el cuadro de diálogo de una herramienta (con algunas excepciones). En cambio, son valores que se establecen una vez en un cuadro de diálogo separado y que las herramientas consultan y utilizan cuando son ejecutadas.

Jerarquía de configuración del entorno

Hay varias maneras de cambiar la configuración del entorno, y donde haga los cambios se puede considerar como un nivel en una jerarquía. La configuración del entorno se transmite de nivel a nivel. En cada nivel, puede invalidar la configuración de entorno transmitida desde el nivel superior con otra configuración.

  • Nivel de la aplicación: en el menú principal haga clic en Geoprocesamiento > Entornos. Los cambios que realiza aquí afectará a la ejecución de cualquier herramienta.
  • Nivel de la herramienta: en un cuadro de diálogo de la herramienta, haga clic en el botónEntornos. Esto abrirá el cuadro de diálogo Configuración del entorno. Tenga en cuenta que toda la configuración del entorno, independientemente de si la herramienta los respeta o no, se enumeran en el cuadro de diálogoConfiguración del entorno. Deberá consultar la página de referencia de la herramienta para determinar si la herramienta distingue el entorno. Cualquier configuración que haga aquí se invalida la configuración de nivel de aplicación. Esta configuración solo se aplica a la ejecución de la herramienta; la configuración a nivel de la aplicación no se sobrescribe.
  • Nivel de modelo, proceso de modelo o secuencia de comandos: en un modelo o secuencia de comandos, tiene un alto nivel de control sobre la configuración del entorno. Puede cambiar un entorno para una herramienta en particular, un conjunto de herramientas, o para cada herramienta en el modelo o secuencia de comandos. La configuración que haga en este nivel anulará todas las configuraciones realizadas en la herramienta o a nivel de la aplicación.

La configuración del entorno se almacena en un resultado

Un resultado en la ventana Resultados almacena todas las configuraciones del entorno que se hacen en la aplicación o a nivel de la herramienta. Cuando se ejecuta la tarea en el servidor, la configuración del entorno en el resultado se utiliza durante la ejecución de la tarea. Sin embargo, la configuración que haga en el nivel de modelo o de secuencia de comandos no se muestran en el resultado, pero se utilizarán durante la ejecución de la tarea. Puede considerar la configuración del entorno en el resultado como transmitida a la herramienta de modelo o secuencia de comandos que es libre para invalidar la configuración.

Temas relacionados