2

バッチ取得は、データストアからデータを取得する最速の方法の 1 つになると思います。祖先の下にある種類のすべてのエンティティを取得するクエリと比較してどうですか? もちろん、このクエリにはフィルターや並べ替え順序はありません。

このクエリは、インデックス スキャンを必要とせず、エンティティ bigtable から直接エンティティを取得するだけでよいと考えられるため、バッチ取得と同じくらい高速であると予想されます。また、このテーブル内のすべてのエンティティがキーで並べ替えられていると仮定すると、結果は順序どおりに並べられ、すべて順番に並べられます。これは、バッチ取得では保証されません。

両方の操作が同じ量のエンティティを取得することを考慮すると、コストの観点から、バッチ取得と比較した場合、クエリは +1 の読み取り操作しかありません。

私の仮定は意味がありますか?これらの仮定を確認または否定できる何かを経験したことがありますか?

私の期待を確認できれば、これらのクエリを多用する予定です。モデルを階層に編成し、リスト内の他のエンティティへの参照を保存しないようにします (バッチ取得用)。リスト サイズの制限がなく、大きなエンティティの取得も避けることができます (多数の多値プロパティ) バッチ取得を必要としない状況で。

それについてコメントをいただければ幸いです。

前もって感謝します。

4

1 に答える 1

0

祖先クエリと非祖先クエリの間で観察されるパフォーマンスの違いは、偶然ではないと思います。しかし、確かに、何かを設定して測定を行います。これは従うべき良い習慣です。

于 2013-02-25T03:38:16.827 に答える