2009-08-20 6 views
10

私はApp EngineのPythonバージョンを使用したいと思いますが、Google Data Store専用のコードを書くのではなく、Big Tableにアタッチできる汎用のPython ORMを使用してモデルを作成したい、もし私が好きなら、後で定期的なデータベースを使用してください。これを可能にするSQLAlchemyのようなPython ORMはありますか?PythonのORM(SQLAlchemy?)はGoogle App Engineで動作しますか?

答えて

7

技術的には、これはORM(オブジェクトリレーショナルマッパー)ではなくDAL(データベース抽象化レイヤー)と呼ばれます。 APIがすでにオブジェクトマッピングを処理しているため、いくつかの単純なリレーショナルマッピング(RelationPropertyを参照)があるため、ORMの部分はAppEngineにとって本当に興味深いものではありません。

DALは、AppEngineのデータストアと、mysqlのような「通常の」sqlデータベースを切り替えることは決してありません。 reddis、mongo、またはtokyoのキャビネットのような異なるキーバリューストアを切り替えることができます。しかし、彼らはすべてそのような非常に異なる特性を持っているので、私は実際にそれを使う前に二度考えます。

最後に、DALはDBインターフェイスの上に置かれていましたが、AppEngineのAPIを使用すると、基本的に他のストレージバックエンドをAPI上で使用できる独自の「スタブ」を実装できます。 Mongoの人々はMongoDBのためにoneを書きました。これはとてもいいです。また、dev_appserverにはファイルシステムベースのものが付属しています。

そして今、答えに:はいあります!それはweb.pyの一部です。私は上記の理由で本当に試したことがないので、それが良いかどうか本当に言うことができません。

PS。私はRubyがキーバリューストア用の素晴らしいDALプロジェクトを持っていることを知っていますが、私はそれを今見つけられません...ある時点でPythonに移植することはいいかもしれません。今日で

+6

のweb2py(web2py.com)とweb.py(webpy.org)は、2つの異なるフレームワークです:) –

+0

は、私はあなたがweb2pyの話をしていると信じています。http:/ /www.web2py.com/book/default/chapter/06また、http://web2py.com/のホームページの** Talks to **セクションに記載されています。 –

3

彼らはGoogleがクラウドSQLを開始しましたので、やる

関連する問題