Transactions per second is a relative metric that has a lot of variables:
- Which API you are using. Matrix and the batch routing services will likely be slower than the regular routing service as batch type services are generally processed with less priority than real-time request services.
- Your network latency and all the possible latency between you and the Azure Maps service.
- Size of the downloaded data (matrix service is smaller than routing service).
- How much load is on the Azure Maps platform when you are making your requests. At peak times batch serves can be deprioritized more.
- The http library you are using to make the request can also have an impact.
- If you are making the requests synchronously or have multiple requests made in parallel. Note that there is query per second limits. I believe the default limit is 50, but you can contact Azure support and request to increase this.
The number of times you call the API will depend on how you plan to get the distances:
- If you want to calculate a distance along a road using the routing or matrix service and that each record is being routed to one other point only (meaning 0.8M routes). Regardless of which method below you use, there will be 0.8M route transactions generated.
- The async matrix service and batch routing service allows up to 700 origin-destination pairs/route requests per matrix/batch request, so it would take 1143 requests to start that process, plus another 2 x 1143 requests to check the status at least once and then download the results.
- If using the real time routing service you would be making 1 request per origin-destination pair, so 0.8M requests.
If instead you are trying to calculate a matrix between all possible paths of the 0.8M records (0.8M x 0.8M matrix) this would require 640B route paths. I'm assuming this isn't the case as this is a crazy amount, but if by chance this is what you are looking to do for matrix/batch routing you would likely be around 3B requests, and if using the real-time routing service 650B requests.
- If all you need is straight line distances then don't use a service, this can be easily calculated if you have coordinates for each of your records. One of the most common distance calculations is the Haversine formula.