Cloud Datastore のクエリでのデータの整合性

データ整合性レベル

Cloud Datastore クエリは、次の 2 つの整合性レベルのいずれかで結果を返すことができます。

  • 強整合クエリは、結果が最新であることが保証されますが、完了までに時間がかかる場合があります。
  • 結果整合クエリは、通常、より高速に実行されますが、最新でない結果が返される場合があります。

結果整合クエリでは、結果の収集に使用されるインデックスも、結果整合性に基づいてアクセスされます。その結果、元のクエリ条件と一致しなくなったエンティティが返される場合があります。一方、強整合クエリでは常にトランザクション上の整合性が維持されます。エンティティとインデックスの更新方法について詳しくは、App Engine におけるトランザクションの分離の記事をご覧ください。

Cloud Datastore クエリのデータ整合性

クエリでは各クエリの特性に基づき、異なる整合性レベルを保証した結果が返されます。

  • 祖先クエリ(1 つのエンティティ グループ内のクエリ)は、デフォルトで強整合ですが、Cloud Datastore の読み取りポリシーを設定する(後述)ことで、結果整合にすることができます。
  • 非祖先クエリは常に結果整合になります。

キーによるエンティティの取得(「キーによる検索」とも呼ばれる)は強整合になります。

次のステップ

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

Go の App Engine スタンダード環境