0

私はいくつかのPythonコードを見て、AncestorPathsだと思うものを動作させようとしています。

def parent_key(name = 'default'):
    return ndb.Key('MyEntity', name)

どこにでも

 MyEntity.get_by_id(someId, parent = parent_key())

これらのエンティティには関係の意味での本当の「親」がないため、なぜこれが行われるのかについてのドキュメントまたは説明を見つけようとしています。

GAEのドキュメントを少し読んだことがありますが、いつ、いつこれを行わないのかはまだ明確ではありません。

4

1 に答える 1

1

エンティティを同じ親にすることで、同じエンティティ グループの一部になり、クエリの一貫性を保つために使用できます。通常、データ ストアは、エンティティを保存した直後にフェッチできることを保証しません。最終的には表示されますが、数秒かかる場合があります。

ただし、祖先クエリを実行すると、強い一貫性が保証されます。これが、ドキュメントの紹介サンプル コードのほとんどが同じ親を持つすべてのエンティティを作成する理由です。これにより、データを保存した直後に簡単に取得できますが、このエンティティ グループへの変更は 1 秒あたり約 1 回の書き込みに制限されます。

ドキュメントの強力な一貫性のためのデータの構造化の章には、さらに詳細が記載されています。

于 2013-03-10T21:14:01.307 に答える