I'm trying to delete 300 000 entities in GAE (java), using this:
PersistenceManager pm = PMF.get().getPersistenceManager();
Date date70DaysAgo = Calendar.getInstance().getTime();
date70DaysAgo.setDate(date70DaysAgo.getDate()-70);
Query query = pm.newQuery(PositionApplication.class);
query.setFilter("date <= yyy");
query.declareParameters("java.util.Date yyy");
query.setRange(0,750);
Collection<PositionApplication> elements = (Collection<PositionApplication>)query.execute(date70DaysAgo);
pm.deletePersistentAll(elements);
I'm limited to 50 000 write ops a day (free quota). I naively thought that in 6-7 days it should be done, but it appears that 1 call uses 1/5 of the daily quota.
--> Datastore Write Operations 21% 0.01 of 0.05 Million Ops
10 000 write ops, why not 750?
Is it related to indexes?