データセットに対して継続的な集計を行う必要があります。アプリ エンジンの高レプリケーション データストアを使用しています。
作成された日付の文字列を保持するプロパティを持つ単純なオブジェクトがあるとします。オブジェクトに関連付けられた他のフィールドがありますが、この例では重要ではありません。
いくつかのオブジェクトを作成して保存するとしましょう。以下は、各オブジェクトに関連付けられた日付です。各オブジェクトは以下の順序で格納されます。これらのオブジェクトは、別のトランザクションで作成されます。
Obj1: 2012-11-11
Obj2: 2012-11-11
Obj3: 2012-11-12
Obj4: 2012-11-13
Obj5: 2012-11-14
アイデアは、カーソルを使用して、新しいインデックス付きオブジェクトを継続的にチェックすることです。新しいインデックス付きエンティティの集計が実行されます。
ここに私が持っている質問があります:
1) オブジェクトは順番に索引付けされていますか? Obj4 が Obj 1、2、および 3 の前にインデックス付けされる可能性はありますか? ORDER BY クエリとカーソルを使用して検索を続けると、これが問題になります。インデックス作成に遅延があると、一部のエンティティが見つかりません。
2) ORDER BY が指定されていない場合、エンティティはクエリでどのような順序で返されますか?
3) 新しいインデックス付きエンティティを確認するにはどうすればよいですか? のように、すべてのエンティティを取得し、カーソルを保存してから、最後のクエリ以降に新しいエンティティがインデックス付けされているかどうかを後で確認しますか?
それほど重要ではありませんが、検討の材料に
4) すべてのフィールドが一緒に索引付けされていますか? たとえば、日付プロパティがあり、名前プロパティがある場合、特定のオブジェクトに対して両方のプロパティが同時にインデックス付けされているように見えますか?
5) 複数のエンティティが同じトランザクションで書き込まれる場合、トランザクション内のすべてのエンティティが同時にインデックス化されますか?
6) すべてのエンティティが同じエンティティ グループに属している場合、すべてのエンティティが同時にインデックス化されていますか?
回答ありがとうございます。