Which units of measure are used in the Here Traffic Flow API - here-api

I read the developer documentation but still I can't find which units are used for
speedFlow
speedUncapped
location length, etc.
The API response for speeds are in the range of 2.5-3.7, too low to be miles per hour.
Does anyone know which units are used in the API response. They don't offer tech support for trial accounts.
Thank you.
I read the developer documentation https://developer.here.com/documentation/traffic-api/dev_guide/index.html

Related

Google Earth Engine quota policy

In the GEE documentation here there is limited information about the quota limits. Basically all it tells us is that there are separate limits for concurrent computation vs tile requests. I am hitting the 429 Too Many Requests often for computation requests.
In order to properly throttle my requests or add a queueing system then I would need to know details about the quota policy e.g. "the quota is X concurrent computations", "there's a rate limit of Y requests within a Z minute window".
Does anyone have knowledge of the actual quota policy?
Earth Engine's request quota limits are a fairly complex topic (I know because I work on them) and there are not currently any documented guarantees about what is available. I recommend that you implement automatic backoff that adapts to observed 429s rather than attempting to hardcode a precisely matching policy.
Also note that fetching data in lots of small pieces is not the best use of the Earth Engine API — as much as possible, you should let Earth Engine do the computation, reducing large data sets into just the answers you actually need. This will reduce your need to worry about QPS as opposed to concurrency, and reduce the total amount of request processing and computation startup overhead.

Firebase - Dynamic Links Limit

I've been trying to do some research into the use of Dynamic Links with Firebase and was curious if anyone knew of any limit on the number of dynamic links we can use. For example, we're looking to generate links server side which is dynamic and will log users into our apps. However, this will go into the 10,000s. so will this be a bit too extreme for Firebase and therefore not a viable solution?
Thanks in advance.
That should be fine - the limits on FDL will be in terms of how many you can create per second, so as long as you spread the creation out, you should be fine.
Based on my (short) experience, if using the free plan there is a limit of 100 links per 100 seconds per user, which means if you generate links on the backend (like I do) you are basically limited to creating 1 link per second, which is not much. If you exceed this limit you receive an error like this:
429 Too Many Requests
Insufficient tokens for quota 'DefaultQuotaGroup' and limit 'USER-100s' of service
Also a lot of times the Dynamic Links API returns error 503 Service Unavailable when generating links instead of 429, I don't know why but I don't think they have availability issues. It's just kind of confusing.
Here is what I see on my project's quotas page:
Default quota. per day 100,000
Default quota. per 100 seconds 5,000
Default quota. per 100 seconds per user 100

Where did RU/m go?

This used to be a feature of CosmosDb to provision Request Units Per Minute (as well as Request Units Per Second) however the option appears to have disappeared from the portal and all online documentation has been removed?
Thanks, Oliver
RU/m is dead
Just received a response from Microsoft
We received a ton of feedback from our customers who participated in the Preview program; starting 8/25/2017, we have officially closed the Preview program for RU/M. Based on all customer feedback, we believe that we have a good understanding of how we can dramatically improve the capability by making it easier to use and by making it useful across all workloads (instead of a just few).
It was a preview feature that is not now retired.

What is the rate limit for direct use of the Google Analytics Measurement Protocol API?

In the Documentation for Google Analytics Collection Limits and Quotas
It gives the rate limits that are implemented by the various Google-provided libraries. I can't seem to find a published rate limit for users that are POSTing directly to measurement protocol (https://www.google-analytics.com/collect).
Is there one and if so what is it?
Edit on 10 July 2015 -
A few commenters asked for an example of the kind of data I am sending in.
Using a series of calls to wget with a sleep of one second between each call.
Here is an example with the app name and tracking code removed:
wget -nv --post-data 'ul=en&qt=7150000&av=0.0.1&ea=PLET&v=1&tid=<my_tracking_code>&ec=Move+to+Object&cid=1434738538-738-654031&an=<my_app_name>&t=event' -O /dev/null 'https://www.google-analytics.com/collect'
I've tried sending these queries to the /debug endpoint and all of them are valid. My first upload worked as expected and reports looked good. Subsequent uploads of the same data set to different GA properties have had mixed results. Sometimes no data appears in reports. Sometimes partial data appears in reports. During upload, realtime reports always show activity, though.
Directly from the documentation Google Analytics Collection Limits and Quotas
These limits apply to the Web Property / Property / Tracking ID.
10 million hits per month per property
Measurement protocol
Universal Analytics Enabled
This applies to analytics.js, Android iOS SDK, and the Measurement
Protocol.
200,000 hits per user per day 500 hits per session not including
ecommerce (item and transaction hit types). If you go over either of
these limits, additional hits will not be processed for that session /
day, respectively. These limits apply to Premium as well.
Now I agree it doesn't specifically state the per second it rate for measurement protocol but the above one dumped Measurement in with analytics.js so I think we can assume its
analytics.js:
Each analytics.js tracker object starts with 20 hits that are
replenished at a rate of 2 hit per second. Applies to all hits except
for ecommerce (item or transaction).
But just to make sure I am sending an email off to the development team they should make it more clear where the per second rate of the measurement protocol lies. I will repost here when I hear from them
Response from Google
The Measurement Protocol does not do any kind of rate limiting or
quota-ing by IP address or tracking ID or anything like that. However,
most of the client libraries do rate limit in some form or another.
As Linda points out in her answer, there are various limits and quotas
imposed by the back end, but those are done at processing time, not
collection time.
Conclusion
There is no limit to sending data through the measurement protocol. But when the data is processed limit may be applied. I think they may be referring to the max 2 million hits a month. It seems it's the libraries that apply limits on how fast you can send data not the measurement protocol directly.
Last Update: Please watch this video which explains all GA quotas policies:
https://youtu.be/1UfER93ALxo
In particular, your issue might be result of 10 requests / 1 second limitation:
https://youtu.be/1UfER93ALxo?t=5m27s
I can confirm the same thing. In my case I had own buildHitTask which constructs URL for a measurement protocol request (MPR) and stores it in the hitPayload field. But instead of original GA reporting - I was saving those URLs into cookies for delayed reporting.
In my experiment, only 10-20% of 2,000 measurement protocol requests were actually "stored".
Rest of hits are not available in GA Reporting UI, neither API or BigQuery. Each request was sent with 2 seconds delay via new Image() method, and slowdown in case of errors. Received results are not consistent. Both success and failed hits are randomly distributed across whole time period.
Please let me know in case if you find more details on this constraint!

How to get distance from Google Map API from server side ASP.NET 2.0

I am working on a project which requires a server side access to google map api. i want to calculate distance (actual distance, not straight line). google map api supports javascript and not asp.net. please give suggestions ...!
you specified google maps in your question - but have you looked at Virtual Earth? Specifically this routing with Virtual Earth Web Service example sounds exactly like what you want:
server-side access (just Add Service Reference inside visual studio)
actual distance (not straight line) since it is using a route
The concerns raised by others about T&Cs for 'internal/intranet use' apply to VE as well as Google I think - you'll have to read up about whether your application needs licensing or not.
p.s. if you did just want to calculate straight-line distance, I have instructions using SQL Server 2008; which also links to some straight c# code that does it too.
The Google API allows you to Geocode via a server side call:
http://code.google.com/apis/maps/documentation/services.html#Geocoding_Direct
This would allow you to get the longitude and latitude of the locations. You can then cache these and use them to calculate distance using the techniques CMS suggests.
You will need to be careful of the Google T&C's though as you are only allowed to store the geocoding data for use on a Google map which is publicly available.
You would probably also run into limitations on the number of requests you could make from a single IP.
However I think what you mean by non-straight line distance is distance taking into account roads and one way streets etc.
If this is the case I think a commercial service is your only option. Although theoretically you could do it all via screen scraping, I'm almost certain that this would break Google's T&C's.
The simplest solution would probably be just to embed a Google map on a page of your application and let the user calculate the distance. You could pre-fill the to and from fields if required.
Again if this is for an internal app i.e. Not publicly available "my understanding" of the Google T&C's would forbid this.
Use something like firebug or fiddler to look at the requests that are being sent to Google from javascript you should then beable to build the request using that information and an HTTPWebRequest in .net and retrieve the same information.
HTH
You can calculate the distance of two geographical coordinates (latitude, longitude) using the Great-circle distance algorithm.
Here you can find some other formulas for distance calculation.
Well, you've pretty much identified the key issue, the Gmaps API is a browser resident javascript API and there's not much getting around that. Most of the API is executed in the browser so there's not much network traffic to spy on.
As tsaunders mentions there is a geocoding API call that is restfully accessible, but it only does reverse/geocoding and if you have lat/lng's already you can use the calculations the rms suggested, but they are as tsaunders points out 'as the crow flies' distance.
If indeed you are looking for road taken distance, the API does do routing but you are back in the browser to get the start/end points from the user.
Perhaps you can be a little more specific about what you are trying to do and why you feel this requires you to to access the API from your server. My application for instance has features that gather information from the user and sends requests back to my server to work on, some of that data are processed by the Gmaps API first.
If I were to use a API platform, I certinaly would not use Google as the free one does not include advances Geocoding menaing the accuracy is poor. There is also no sla , support or rights of service.
The directions are poor, the coverage for Ireland and Geocoding is almost childlike and the privacy stinks. No professional business would use a google mapping solution.
They copy everyone else's idea, say they are there own and get loads of press (they only added tube stations in 2006) an dcyclc lanes (2010), viamichelin added these 2006 and Traffic in 2009 !
Any agency or developers looking for an API should stick to Bing or ViaMichelin for better customisation and user experience which is killer !

Resources