Could we use Google App Engine without using their data API?
I am plannin开发者_JAVA百科g to develop a web application with Django. Google App Engine (GAE) seems a good place to start. Scalability is the strong feature for me.
But from research, it seems using GAE's API such as Database API throw more problem than expected.
My question is, Could we use GAE with our own database such as MySQL instead?
If you don't use the App Engine datastore, you can just say goodbye to the scalability. In fact, the reason why the system uses a NoSQL database like Bigtable is that MySQL and other RDBMSs don't scale. That's the tradeoff. Now if you can tell us what problems you're running into, perhaps we can "fix" them for you so that you can take advantage of its scalability.
However, if you really would rather swap "scalable & non-relational" for "unscalable & relational," IOW you must have SQL, then keep an eye out for the hosted cloud MySQL-compatible solution, coming soon, and hinted at here:
http://googlecode.blogspot.com/2010/05/announcing-google-app-engine-for.html
http://code.google.com/appengine/business/
An even better solution comes from the fact your app is Django. You should strongly consider using Django-nonrel. It is a fork of Django that allows it to run on top of NoSQL databases like MongoDB, App Engine's Bigtable-based datastore, and (coming soon) Cassandra. You use Django's ORM interface and don't even need to worry about using App Engine's Datastore API because it's all be abstracted away for you. Read/watch more about Django-nonrel and how you'd use it with App Engine here:
http://www.allbuttonspressed.com/projects/django-nonrel
http://code.google.com/appengine/articles/django-nonrel.html
http://us.pycon.org/2011/schedule/presentations/237/
If you want to use GAE, you must use it as-is. Recently i read many announcements about new features, but it's still a sandbox.
If you prefer to be free to choose your own stack, consider Amazon EC2 (i know it's not well considered in these days ;) or Rackspace.
There are also a few Heroku-like services for Django, but imho they are all too much young.
精彩评论