私はMongoを初めて使用します。複数の基準に基づいてドキュメントをアトミックにアップサートしたかったのです。ドキュメントは次のようになります。
{_id:..., hourOfTime:..., total:..., max:..., min:..., last:...}
これは基本的に、で識別されるアイテムのクリック数の1時間ごとの集計です_id。各アイテムのクリックは、5秒ごとにアプリケーションからMongoDBにフラッシュされます。したがって、ドキュメントは5秒ごとに更新する必要があります。
これがその場合です。で言うとt=t0、{_id:"nike", total:123, max:10, min:3, last:9}それでは、でt=t1、メッセージが表示されます{_id:"nike", count: 12}。さて、のため_id="nike"に、私は次のことをする必要があります、
- インクリメント
total_12 - の場合
max < 12、更新max=12 - の場合
min > 12、更新min=12 - アップデート
last=12
このすべての操作をアトミックにしたい。これを1つのクエリで変換できません。ヘルプ/ヒントをいただければ幸いです。