1

かなり複雑なデータ モデルを持つ GAE 用のアプリケーションを開発しています。

私の理解では、noSQL データベース、特に GAE を使用して複雑なデータ モデルを処理する良い方法は、非正規化されたデータの「ビュー」を使用することです。ブラウザクライアントが一部のデータを更新したい場合、サーバーは一部のコアデータに書き込みを実行し、クライアントが続行できるように「200 OK」を返し、タスクキューを使用して、書き込まれたデータが影響した可能性のある「ビュー」を更新します.

次に、クライアントが通常は SQL 結合を必要とするいくつかのオブジェクトに対してクエリを実行する場合はいつでも、代わりに、必要なすべてのデータが同じ「行」(またはアプリ エンジンの場合はエンティティ) にある「ビュー」をクエリできます。 )。

私が抱えている問題は、このビューの作成と更新はすべて、手動で行うべきものではなく、ライブラリが行うべきことのように見えることです。データのいくつかのビューを指定し、それらが適切に作成および処理されることを期待できる、GAE で動作するツールはありますか? 私はCouchDBがこれを行うと信じています...

4

1 に答える 1

2

ビューは通常、非関連機能よりも RDBMS 機能です。ただし、あなたが説明しているのはマテリアライズド ビューのように聞こえますが、それらは有効なソリューションですが、一般的なソリューションではないため、(私が知っている) App Engine 用のライブラリはありません。これ。

より一般的なのは、効率的な読み取りを容易にする方法で非正規化されたデータを単純に保存し、書き込み時にデータを直接更新することです。

于 2011-01-30T23:30:05.663 に答える