経費報告用の簡単なアプリケーションを実装しています。アプリケーションはGAEを使用します。私のアプリケーションには、Year、Month、Day、Expenses、Accountなどのいくつかのエンティティ(クラス)があります。写真は次のとおりです。ユーザーはアカウントを作成し、簡単なフォームで経費の申告を開始できます。費用はGAEDatasotreに保存されます。毎年月があり、毎月日があり、毎日経費が宣言されています。問題は、GAEの非リレーショナルデータベースでこれらのエンティティを配置する方法がわからないことです。Google Developers Webサイトからいくつかのチュートリアルと記事を読みましたが、親子関係とエンティティのグループの概念をまだ理解していません。誰でもチュートリアル、ビデオ、関係を設計し、GAEデータストアなどの非関係データベースにエンティティを保存する方法に関する記事または書籍。前もって感謝します。GAEの低レベルデータストアを使用したいということを忘れてしまいました。
2 に答える
Javaを使用している場合は、objectifyを使用することをお勧めします。少なくとも私にとっては、JPAよりもはるかに簡単です。
読み取りと書き込みで料金を支払っています。たとえば、1か月のすべてのデータを1 MBに収めることができる場合、1日分の個別のエンティティはありません。とにかく、なぜ年がエンティティである必要があり、フィルタリングするプロパティである可能性があるのかなど、あなたの要件を理解していません。実際には、フィルター処理するYearプロパティとMonthプロパティを持つDayエンティティを用意することを考えています。
http://code.google.com/p/objectify-appengine/wiki/IntroductionToObjectify#Relationships
MongoDbでは、ドキュメントを「埋め込む」ことができます。GAEがMongoDBのように進化しているかどうかはわかりませんが、そうではないと思います。この段階でドキュメント化に問題がある場合は、おそらく、より適切に文書化された別のNOSQLデータベースを調べる必要があります。とにかくMongoDBサイトを見てみたいので、SQLのバックグラウンドを持っている場合は、2つのカルチャ間の用語のマッピングを確認できます。もちろん、NOSQLデータベースは本質的に非トランザクションであるため、経費の支払いを追跡するようにアプリを開発すると、後でいくつかの克服できない問題が発生する可能性があります。