1
Mongo에는 SessionId 및 Ticks라는 두 개의 필드가있는 문서가 있습니다. SessionId는 키이고 Ticks는 특정 시점 이후부터 틱에 대해 긴 int입니다.세션 길이에 대한 몽고 쿼리
내가 원하는 것은 SessionId로 그룹화하고 해당 세션에 대한 최대 틱 수와 최소 틱 수를 비교하는 것입니다. SQL에서는 꽤 쉬울 것입니다 :
SELECT sessionId, MAX(ticks) - MIN(ticks) as session_length
FROM weblog
GROUP BY sessionId
그러나 이것은 Mongo에서 상당히 관련이있는 MapReduce 인 것 같습니다. 어떻게할까요? MapReduce? JS for 루프? 나는 당신의 데이터 모델을 이해 가정
에서 엠 ongoDB 버전 2.2 (다음 stable 릴리스)에서 새 집계 프레임 워크를 사용하면 Javascript없이이 유형의 집계를 수행 할 수 있습니다. 또한 쿼리 성능을 최대화하기 위해 세션 ID에 최소값과 최대 값을 저장하려고 할 수도 있습니다. 다음은 새로운 집계 프레임 워크에 대한 링크입니다. http://docs.mongodb.org/manual/applications/aggregation/ – Jenna