現在、3 つの SQLite データベース テーブルを使用する Android アプリがあり、このデータを Java ベースの GAE アプリのクラウドに保存したいと考えています。これはバックアップとして使用され、ユーザーはログイン時にブラウザーで表示することもできます。ユーザーは Android アプリにデータを入力しているため、3 つのテーブルのすべてのデータはそのユーザーに属します。このタイプのユーザー固有のデータを保存するための推奨される方法はありますか? ユーザーの電子メールを各エンティティと一緒に保存して、それを識別するか、ユーザー エンティティを親として、このユーザーに属するすべてのエンティティを子として保持する必要がありますか? この場合、親を使用する利点はありますか?
質問する
409 次
2 に答える
0
それはすべて、1 人のユーザーに対して持っているレコードの数、これらのレコードが更新される頻度、およびこのデータへのアクセス方法 (必要なクエリの種類など) によって異なります。したがって、質問に対する単純で決定的な答えはありません。
ほとんどの場合、ユーザーごとに数千のレコードがあり、それらが数分ごとに更新される場合を除いて、どちらのアプローチでも問題ありません。
各レコードを識別するために電子メール アドレスを含める必要はありません。通常、最初にユーザー エンティティを作成してから、このユーザー エンティティの ID (Long) を使用して、このユーザーに関連する他のすべてのエンティティを識別します。
于 2014-12-15T16:30:02.793 に答える
0
私の 2 セント。Sqlite とは異なり、Google App Engine はリレーショナル データベースではないため、SQlite データを GAE に保存するのは簡単な作業ではありません。ただし、アプリからのユーザーメールをエンティティとして使用するアプリを GAE で作成できます。次に、このキーに基づいてユーザー固有の情報を取得できます。この場合に必要なすべて (最も重要なこと) は、そのデータをアプリから GAE に送信する方法を見つけることです。
于 2014-12-15T16:38:43.240 に答える