0

GoogleAppEngineを使用してユーザーを保存しています。以前は、userIdフィールドに自動インクリメントintを使用してMySQLを使用していましたが、GAEは、格納する新しいエンティティごとにキーを自動生成しますが、自動インクリメントIDintg5kZXZ-aGVsbG93b3JsZHIKCxIEVXNlchgNDAも自動的に生成します。

userIdとして保存するには、クライアントコードでどちらを使用する必要がありますか?GAEが生成する長いキーを使用することに利点はありますか、またはパフォーマンスとルックアップの点で同じものを小さなint IDを使用していますか?どちらか一方に利点はありますか、それとも実質的に違いはありませんか?

編集:申し訳ありませんが、私の質問は十分に明確ではありませんでした。私が求めているのは次のとおりです。長さではありませんが、ルックアップキーを持っていると、持っていないよりも一歩先を行くことができますか?ユーザーを検索したい場合は、電子メールで検索する必要がありますが、「テーブル」にその行のキーがあるので、これは何らかの利点をもたらしますか?

4

2 に答える 2

1

どちらでも問題ありません。長い文字列を使用する場合と短い文字列を使用してユーザーを識別する場合のパフォーマンスに違いはありません。

于 2012-04-14T18:30:54.263 に答える
0

生成されたエンティティIDは、単調に増加する値であるとは限らないことに注意してください。

于 2012-04-15T05:39:32.663 に答える