views:

36

answers:

1

I am using the App Engine RemoteApiServlet and the Bulkloader to load data into the datastore. As the dataset that i was uploading was huge (a million entities) I enabled "Billing" on my application and set the max. daily budget to $5 and later to $10.

After i loaded the entities, using the App Engine admin console, i determined that i would be billed ~ $7 for CPU hours (as i ended up using ~ 70 CPU hours). However when i look at the Billing history, i was charged only 0.05$ (for storage) and $0.0 for CPU hours.

I want to know if this is expected? Is Bulkloading using the RemoteApiServlet not billed for CPU hours ? If yes, when i set a max daily budget of $5 and exceeded my CPU quota i started getting HTTP 503's from the service. If the usage of the RemoteApiServlet is exempted from billing, then why was I seeing the 503 errors?

+1  A: 

There's nothing special about remote_api and billing. If you did this before yesterday, when we re-enabled datastore CPU billing, however, you wouldn't have been billed for any of the datastore CPU charges, which make up the majority of the CPU cost of bulkloading.

Nick Johnson
Thank you for answering my question Nick. I thought data store CPU time was treated differently as against general CPU time. Now it makes sense.
Rahul
Is there a difference between "general" CPU time and Datastore CPU time. I am asking this because the amount of datastore cpu time that we consumed on that day was very minimal in comparison to the general CPU time and we were not billed for either of them.
Rahul
The CPU time you see on the main page of your dashboard is the total CPU used in all places - by your handlers directly, and by various APIs. The datastore CPU time is a subset of that, and until a couple of days ago, although it still added to the CPU total, it wasn't being charged for.
Nick Johnson