At http://www.911pagers.org/, a relatively simple query such as
http://www.911pagers.org/#rangeId0-128, which does:

    SELECT * FROM MessageS where id >= 0 && id < 128 order by id

and fetches 128 entities, takes anywhere between 1s and 4s, usually
around +2.5s, measured on the server, in wall-clock time, with the
following code:

    Calendar c = Calendar.getInstance();
    long t0 = c.getTimeInMillis();
    qmsgr = (List<MessageS>) qmsg.execute(lo, hi);
    System.err.println("getCMIdRange:qmsg: " + (c.getTimeInMillis() - t0));

id is not the primary key of MessageS, but a 'long' field, _unique_ in
each entity (so it maps 1-to-1 with the entities). Note: such a query
doesn't require a specific index.

There are about 500,000 MessageS entities in the datastore, for a
total of 140 MB, excluding metadata (of which there are about 85 MB).

Repeating the same request several times in a row doesn't improve
response time. The delay has been pretty consistent over several days.
Note again that the delay is measured on the server, the latency of my
connection is not a factor.

I am aware App Engine is a preview and all, but 2.5s, really?

I can find the data faster in a text file split across 4 machines over
a shared Ethernet 10Mb with a bunch of Python for loops running on
OLPC XOs, for $DEITY's sake.

Eric.

--

You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appeng...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.


Reply via email to