MySQLでは、すべてのユーザーのIDを生成するために自動インクリメントを使用しました。私は、ユーザーのIDが一意になるGoogle Datastoreに同様のユーザーテーブルを作成したいと考えています。これらの文書によると:https://cloud.google.com/appengine/docs/java/datastore/entities
システムに割り当てられたID値は、エンティティグループに固有のものです。
しかし、この投稿によると: Google App Engineとndbを使用すると重複IDが表示されることはありますか? idは一意ではありません。 このIDは一意である必要があります。ドキュメントではidがユニークだと言っているので混乱していますが、この投稿からはidがユニークではないということはユニークなキーです。私の目的は、2人のユーザーが同じIDを持つことがないようにすることです。これをどうすれば保証できますか?私は、このフォームの世話をするデータベースを好むだろう、私は大規模なIDを手動でuuidsなどのものを使用して作成することに反対した。
回答:
回答№1は2イゴールが正しく観察されたように、IDは 常に エンティティが親を持たない限り一意です。
ユーザーエンティティを他のエンティティの子にする理由を考えることはできないので、あなたは安全です。
IDはデータセット全体に均等に負荷を分散するのに役立つため、IDは連続していないことに注意してください。これはデータストアの設計方法の副産物です。