Mapsimise provides a bulk geocoding service to perform the geocoding process on non-geocoded data that you upload or connect to.
Bulk Geocoding on Datatables
The first time you import a CSV/XLSX file to create a datatable, Mapsimise will run a Bulk Geocode on the data. Only records that need to be geocoded (have no latitude or longitude) will be included in the job.
After a datatable is created and configured, you will need to map address fields in the Geocoding Rule (Edit Rule) before the first Bulk Geocoding Job will run. After mapping the address fields, the job will start:
While a Bulk Geocoding Job is running, you can add the datatable to a map and records will start to appear as they are geocoded.
After a datatable is fully geocoded, any records that are added or have their address fields changed will automatically be geocoded, so there is no need to run bulk geocoding on datatables after the first import.
Bulk Geocoding on Live Data Connectors
Mapsimise can bulk geocode any entities that have a full geocode rule configured. There are quite a few moving parts with bulk geocoding, so let’s run through a scenario using the Microsoft Dynamics 365 Live Connector. The other live connectors work in the same way, with some caveats covered in the articles on the individual connectors.
Live Connector is set up and a geocode rule for the Accounts entity is configured.
Remember that a geocoding rule must have mapped address fields in order for geocoding to occur.
Service Credentials have been supplied for the Live Connector.
Geocoding is performed on the live system by using a specific user account. Please read the article on Bulk Geocoding and Updating of Records via Live Connectors to understand this fully before performing a bulk geocode.
A Bulk Geocoding Job is started.
When a bulk geocoding job is started manually, an option is provided for Re-Geocoding all of my data. Checking this option ignores whether records have been updated since the last bulk geocoding job and will attempt to geocode all Account (in this example) records. Re-geocoding all data should only be used if you wish to overwrite existing lat/long values on all records.
The bulk geocoding job first gathers records that are applicable for geocoding. To be applicable, a record:
- Must have been created or modified since the last time a bulk geocoding job was run on this geocoding rule. Note that this check is skipped if this is the first bulk geocoding job being run, or if the Re-geocode all my data option was checked.
- Must have at least one piece of data in one of the address fields. Mapsimise will not attempt to geocode empty addresses.
- Must have one or more of the address fields changed from the last time this record was geocoded. Again, this check is skipped if this is the first bulk geocoding job being run, or if the Re-geocode all my data option was checked.
- Must not have data in the latitude and longitude fields if this is the first time a bulk geocoding job has been run on this rule. Mapsimise respects pre-geocoded data and will not attempt to geocode records with lat/long values on the first run.
The Bulk Geocoding Job runs.
For each applicable record identified above, Mapsimise reads the current address fields from the record on the live system, performs a geocode, and writes the resulting latitude and longitude back to the target record using the user provided in the Service Credentials for the connector.
Bulk Geocoding Job Scheduling
Once you have geocoded a dataset, it is important to keep it up to date by geocoding any newly created records and any records that are modified. This can be done with automatic geocoding, or by setting up a Bulk Geocoding Job to run on a schedule.
Set up a schedule by going to Connectors -> <your connector entity> -> Details -> Geocoding Rules -> Create Schedule:
Mapsimise allows you to fine-tune the schedule on which your Bulk Geocoding Job will run. When setting up the schedule consider the frequency at which your data is updated, and how often you use Mapsimise.
The schedule editing screen (above) will default to run once a day in the early morning, based on the user’s local time. Use the hours, days and months options to set up a schedule that runs on specific days, or multiple times a day. Mapsimise uses a standard cron-type system for setting schedule intervals.
Scheduled bulk geocoding jobs will only ever run geocodes on records that have been created or modified since the last successful job.
Bulk Geocoding Jobs History
Every time a bulk geocode is started, a Bulk Geocoding Job is created. Bulk Geocoding Jobs run in the background on the Mapsimise servers, so you do not have to wait for them. When a Bulk Geocoding Job is finished, an entry is created in the Bulk Geocoding Jobs History on the datatable or geocode rule screen with a summary of the number of records geocoded and an overall completion status:
Status | Complete or Cancelled. Cancelled jobs will have a cancellation reason that you can see by hovering the mouse over the warning icon. Common reasons for cancellation are: Cancelled by user, running out of geocoding credits, or a connection issue with the Live Connector. |
Applicable Records | The number of records selected for geocoding. See “A Bulk Geocoding Job is Started” above. |
New Geocodes | The number of records that are new or were not previously geocoded. |
Updated Geocodes | The number of records that had modified addresses or were overwritten due to re-geocoding. |
Unsuccessful Geocodes | The number of records that did not have an identifiable address on the geocoding service. Note that a geocoding credit is still consumed even if the address could not be resolved to a latitude/longitude. |
Resuming Cancelled Jobs
Resuming bulk geocode jobs that have been cancelled for any reason is not supported – instead, simply start a new bulk geocoding job. The new job will still identify records modified or created since the previous successful job, but any records successfully geocoded on the previous cancelled job will not be geocoded again as long as the address fields have not changed.
Geocoding Credits
Each record sent for geocoding costs one geocoding credit from your subscription.