単純なmongoドキュメント構造を検討します。
{_id、firstTime、lastTime}
クライアントは、既知のIDを持つドキュメントを挿入するか、既存のドキュメントを更新する必要があります。'lastTime'は常に最新の時刻に設定する必要があります。'firstTime'の場合、ドキュメントが挿入されている場合は、'firstTime'を現在の時刻に設定する必要があります。ただし、ドキュメントがすでに作成されている場合、「firstTime」は変更されません。私はそれを純粋にアップサートでやりたいと思います(ルックアップを避けるため)。
http://www.mongodb.org/display/DOCS/Updatingをクロールしましたが、その特定の操作をどのように実行できるかわかりません。
これが不合理なことだとは思いません。配列フィールドで効果的に実行する$push操作と$addToSet操作がありますが、単純なフィールドでは同じことを実行するものはありません。$setIf操作のようなものがあるはずです。