Skip To Content

Procedure consigliate per la geocodifica batch nel portale

Requisiti

Se si dispone di un'installazione ArcGIS Enterprise, è possibile sfruttare un modello di geocodifica batch asincrono del server che contribuirà a ottenere le migliori prestazioni possibili dai servizi locator. Questo approccio funziona con localizzatori pubblicati sul portale e aggiunti come servizio di utilità. Per maggiori informazioni sulla creazione di localizzatori, la loro condivisione su un portale e l'aggiunta come servizio di utilità, consultare Configurare il portale per la geocodifica di indirizzi.

Vantaggi

Possiamo sfruttare la potenza di ArcGIS Enterprise per trarre il massimo dai servizi di geocodifica pubblicati. Una volta condiviso un locator sul portale, questo può essere usato per eseguire la geocodifica in batch. Seguono alcuni dei vantaggi derivanti dall'uso del portale per l'esecuzione della geocodifica in batch:

  • Ottimizzare le risorse server per terminare il processo di geocodifica batch il più velocemente possibile.
  • Consentire all'amministratore ArcGIS di gestire le risorse di back-end e non sovraccaricare i servizi.
  • Eseguire una geocodifica batch di grandi dimensioni dietro al firewall dell'organizzazione usando i propri dati e il proprio localizzatore pubblicato.
  • La creazione di porzioni e la logica dei nuovi tentativi sono integrati per evitare errori nei processi di geocodifica batch di grandi dimensioni.

Architettura

Per trarre il massimo dai servizi locator pubblicato, è possibile scalare il numero di istanze del servizi di geocodifica. È possibile farlo andando sulla directory Servizi in ArcGIS Server Manager e, dopo aver selezionato il servizio di geocodifica che si desidera scalare, andare sulla scheda Pooling e cambiare i parametri Numero minimo di istanze per computer e Numero massimo di istanze per computer. Per la geocodifica, questi numeri devono essere sempre uguali. Se si desidera avere quattro istanze disponibili alla volta, è possibile modificare entrambi questi valori su 4.

Aggiunta di numBatchThreads

Nel diagramma di cui sopra, l'amministratore ArcGIS ha scalato il servizio locator a quattro istanze. L'amministratore ArcGIS per l'organizzazione può quindi impostare la proprietà numBatchThreads su 4 per il localizzatore e raggiungere un aumento quadruplicato delle prestazioni della geocodifica batch. L'amministratore può impostare la proprietà numBatchThreads nel percorso di condivisione della directory Portal for ArcGIS. Si noti che se due utenti desiderano eseguire la geocodifica batch simultaneamente, l'amministratore ArcGIS potrebbe voler impostare la proprietà numBatchThreads su 2 o i processi saranno messi in coda e potrebbe verificarsi il loro timeout mentre si attende che termini un altro processo. In quel modo, ognuno dei processi di geocodifica batch sarà eseguito con due delle istanze localizzatore disponibili e i servizi locator di back-end potranno gestire il carico dell'invio simultaneo di più processi.

Configurazione

La seguente procedura descrive come l'amministratore ArcGIS può configurare il portale per sfruttare il modello asincrono di geocodifica batch descritto precedentemente.

Aggiungere accesso per un ulteriore feedback durante la geocodifica batch

Per impostazione predefinita, il livello del messaggio del servizio di geoprocessing GeocodingTools è impostato su Avviso. Per messaggi di errore più dettagliati e per aggiornamenti migliori sullo stato del processo di geocodifica batch, è possibile impostare il livello di accesso del servizio di geoprocessing GeocodingTools su Info.

  1. Passare ad ArcGIS Server Manager del server di hosting.
  2. Fare clic sulla cartella Utilities nella directory Server Manager.
  3. Fare clic sul servizio di geoprocessing GeocodingTools.
  4. Fare clic sul banner Parametri a sinistra e cambiare Livello messaggio in Info. Quindi, fare clic sul pulsante Salva e riavvia nell'angolo in alto a destra.

Cambiando il livello di accesso in Info si causa una leggera diminuzione delle prestazioni, ma si fornisce un feedback migliore sull'avanzamento del processo e maggiori informazioni sui possibili errori, qualora si verifichino. Questi vantaggi possono essere visti negli strumenti Tabella di geocodifica, Geocodifica posizioni da tabella e Geocodifica file in ArcGIS Pro.

Aumento del timeout per la geocodifica in batch

Per impostazione predefinita, il servizio di geoprocessing GeocodingTools giunge al timeout in caso di processi superiori ai 200 minuti. Se si prevede che il completamento di un processo di geocodifica in batch possa richiedere più di 3 ore e 20 minuti, è opportuno aumentare il tempo massimo durante il quale un client può usare il servizio.

  1. Passare ad ArcGIS Server Manager del server di hosting.
  2. Fare clic sulla cartella Utilities nella directory Server Manager.
  3. Fare clic sul servizio di geoprocessing GeocodingTools.
  4. Fare clic sul banner Pooling a sinistra e modificare il tempo massimo durante il quale un client può usare il servizio. Se si aumenta questo valore a un numero molto grande, si evita del tutto che si verifichi il timeout di processi di geocodifica batch di grandi dimensioni. Quindi, fare clic sul pulsante Salva e riavvia nell'angolo in alto a destra.

Configurare il numero consigliato di richieste di geocodifica batch simultanee (numBatchThreads) per il localizzatore

Il locator del portale può essere utilizzato anche dal servizio di geoprocessing GeocodingTools eseguito sul server di GIS Server federato. Il servizio di geoprocessing può inviare più richieste simultanee al servizio di utilità di geocodifica per velocizzare l'esecuzione complessiva della geocodifica batch. Il numero di richieste simultanee effettuate dal servizio di geocodifica può essere configurato da un amministratore del portale. Se il servizio di geocodifica sta inviando un numero eccessivo di richieste simultanee al locator, le sue prestazioni potrebbero risultare scadenti. Ciò potrebbe generare un numero maggiore di errori durante l'esecuzione del servizio di geocodifica. Per questo motivo, l'amministratore deve impostare il numero di istanze utilizzate dal servizio di geocodifica in base al numero di istanze disponibili per il servizio locator, nonché configurare il numero di richieste di geocodifica batch simultanee che è possibile gestire da qualsiasi istanza del servizio di geocodifica GeocodingTools.

Come procedura consigliata, il numero di istanze per il servizio locator deve sempre essere maggiore o uguale al numero di istanze disponibili per il servizio di geocodifica GeocodingTools. Il numero di richieste di geocodifica batch simultanee deve essere impostato in modo proporzionale rispetto al numero di istanze disponibili sia per il servizio locator che per il servizio di geocodifica. Ad esempio, se sono presenti 8 istanze disponibili per il servizio locator e 2 istanze disponibili per il servizio di geocodifica, impostare il numero di richieste di geocodifica batch simultanee su 4. Durante l'esecuzione del servizio di geocodifica, il servizio invia quattro richieste di geocodifica batch simultanee al servizio locator. Se è necessario un numero maggiore di istanze disponibili per il servizio locator, modificare il numero di richieste di geocodifica batch simultanee in modo adeguato per ottimizzare l'utilizzo delle istanze da parte del servizio locator.

Notare che Mondo Esri - Geocodificatore batch non può essere configurato per utilizzare più richieste simultanee. La seguente configurazione si applica a tutti gli altri servizi di localizzazione pubblicati che sono configurati come servizi di utilità.

Per impostare il numero consigliato di richieste di geocodifica batch simultanee per il servizio locator, effettuare i seguenti passaggi:

  1. Passare alla posizione di condivisione della directory di Portal for ArcGIS ed eseguire l'accesso come membro con privilegi amministrativi. Il formato dell'URL è https://webadaptorhost.domain.com/<webadaptorname>/sharing/rest.
  2. Passare a Home > Portali > Personale.
  3. Fare clic su Aggiorna nella parte inferiore della pagina.
  4. Nella casella di testo Servizio Geocodifica verranno visualizzati i servizi locator attualmente configurati con il portale. Per i servizi che consentono la geocodifica batch (quelli con la proprietà batchimpostata su true), è possibile configurare il numero consigliato di richieste di geocodifica batch simultanee. Scegliere il servizio da configurare con questa proprietà. L'istruzione JSON nella casella di testo Servizio Geocodifica avrà il seguente formato:
    [{
            "url" : "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer",
            "northLat" : "Ymax",
            "southLat" : "Ymin",
            "eastLon" : "Xmax",
            "westLon" : "Xmin",
            "name" : "Esri World Geocoder",
            "batch": false,
            "suggest" : true
        }, {
            "url" : "https://machine.domain.com/server/rest/services/Locators/USA/GeocodeServer",
            "name" : "Streetmap Premium USA Geocoder",
            "placeholder" : "Find address or place",
            "singleLineFieldName" : "SingleLine",
            "batch" : true,
            "placefinding" : true,
            "suggest" : true,
            "zoomScale" : 10000
        }]

  5. Aggiungere la proprietà numBatchThreads a tutti i servizi locator che si desidera utilizzare con il servizio di geocodifica GeocodingTools. Per impostare il valore numBatchThreads, determinare innanzitutto il numero di richieste di geocodifica batch simultanee che si desidera abilitare per un servizio locator specifico, quindi impostare la proprietà su tale valore. Per configurare numBatchThreads sul servizio locator, il servizio deve avere batch impostato su true.

    In questo esempio, il numero di richieste di geocodifica batch simultanee consentite per il servizio di utilità Streetmap Premium USA Geocoder è impostato su 4.

    [{
            "url" : "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer",
            "northLat" : "Ymax",
            "southLat" : "Ymin",
            "eastLon" : "Xmax",
            "westLon" : "Xmin",
            "name" : "Esri World Geocoder",
            "batch": false,
            "suggest" : true
        }, {
            "url" : "https://machine.domain.com/server/rest/services/Locators/USA/GeocodeServer",
            "name" : "Streetmap Premium USA Geocoder",
            "placeholder" : "Find address or place",
            "singleLineFieldName" : "SingleLine",
            "batch" : true,
            "placefinding" : true,
            "suggest" : true,
            "zoomScale" : 10000,
            "numBatchThreads" : 4
        }]

  6. Dopo aver aggiornato l'istruzione JSON nella casella di testo Servizio Geocodifica, fare clic su Aggiorna organizzazione nella parte inferiore della pagina.

Strumenti abilitati per la geocodifica batch

Una volta che l'amministratore ArcGIS ha configurato un valore numBatchThreads per localizzatore, gli utenti possono godere delle prestazioni migliorate dei loro processi di geocodifica batch. Gli strumenti che beneficiano di questo miglioramento delle prestazioni sono Tabella di geocodifica, Geocodifica posizioni da tabella e Geocodifica file in ArcGIS Pro, nonché Geocodifica posizioni da tabella in Map Viewer.