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.