I've just run a simple test of performance comparison between Master/Slave
and High Replication.

The test is running on 2 apps with 6 bytes length name, using the "Test"
kind without any properties:

from time import time
from google.appengine.ext import db

class Test(db.Model):
pass

keys = [db.Key.from_path('Test', i) for i in xrange(1, 501)]
tests = [Test(key=key) for key in keys]
t = time()
db.put(tests)
print time() - t

t = time()
Test.all().fetch(500)
print time() - t

t = time()
db.get(keys)
print time() - t

t = time()
db.delete(keys)
print time() - t



Test result:

Master/Slave:

> 1.52360796928

0.141813993454

0.147518157959

1.14946293831


> ms=3060 cpu_ms=44519 api_cpu_ms=43446 cpm_usd=1.236788


High Replication:

> 4.77071118355

0.235147953033

3.09301185608

5.15948295593


> ms=13304 cpu_ms=114004 api_cpu_ms=112812 cpm_usd=3.166840


As we can see, High Replication uses more quotas and time than Master/Slave
(especially for db.get() which is 20x slower).

So I think the only benefit High Replication offers now is lower error rate.
----------
keakon

My blog(Chinese): www.keakon.net
Blog source code: https://bitbucket.org/keakon/doodle/

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

Reply via email to