2012-03-21 7 views
0

GAE/Jで簡単なアプリケーションを作成しようとしています。データモデルはnotesのリストで構成され、それぞれ数字の数字がtagsです。リレーショナル世界でシエナによる非正規化データモデリング

、これは多対多のだろう - それぞれnotetagsいくつかを持つことができ、すべてのtagは、いくつかのnotesに「所属」することができるので。しかし、これはGAEデータストア環境にはうまく適合しません。だから、私はそれぞれのnoteと、そのリストtagsの節約を検討している。適切なインデックスが作成されている場合は、タグによる検索もすばやく行う必要があります。

私の質問:Sienaを使用してこれをモデル化するにはどうすればいいですか?ドキュメンテーションは疎で、例を見ましたが混乱しました。

答えて

1

シエナドキュメントは、私はもうそれで作業する時間がないとして散在されています...私は他のプロジェクトで忙しいと誰もが貢献し、シエナを維持したい場合、彼/彼女は大歓迎です。

)あなたの質問を考えて、はいシエナによって管理され、GAEで動作する単純なリスト(別名プロパティリスト)を使用する必要があります。それが動作するはずです(なし注釈)

List<String> tags 

は、次のようなフィールドを追加します!

+0

ドキュメンテーションに関するコメントが暴言のように聞こえる場合は、申し訳ありません。私は怒らせるつもりはなかった!今、もし私のタグが単なる文字列ではなくモデルであればどうでしょうか? 'List tags'だけでもいいですか?私は埋め込みについて読んで、これで@埋め込みアノテーションを使うべきだと考えました。私が理解していることは、JOINを実行したくない場合(自分の質問で説明したシナリオ)、 '@埋め込み 'を使うべきだということでした。このことは正しいのでしょうか? – curioustechizen

+1

心配しないで、私は怒っていません:Dそれは私が悲しいことにそれを知っているので、私は他のプロジェクトで働いているように私は昨年したようにシエナでもう動作することはできません...タグについては、 List を使用することはできませんが、List はGAEがListプロパティのプリミティブ型のみを管理するためです。 @Embeddedも解決策になりますが、エンティティグループ(埋め込みエンティティ)でできる更新の数についてはGAEに制限があります。このグループは1回/秒以上変更できません。だから私はリストを使用し、対応する非常に簡単に見つけることができるようにStringとしてタグキーを書くことをお勧めします。 – mandubian

+0

オクラホマ - 私は今それを得る。私はたぶんタグとして単純な 'String'sを使用することに固執します(これはタグはとにかくです!)。私は実際に、「そんなにタグを付けてメモを探す」方法が実際に試される必要があります。ここで私の発見を更新します。 – curioustechizen

関連する問題