Postgres의 Distinct와 비슷한 기능을 찾고 있습니다.MongoDB, 컬렉션의 각 user_id에 대한 최신 문서를 반환하십시오.
상태가 텍스트이고 날짜가 날짜 인 문서 모음 {user_id, current_status, date}이 있습니다. mongo 주위에 내 머리를 감싸고 일을하는 가장 좋은 방법에 대한 느낌을 얻는 초기 단계.
mapreduce가 가장 좋은 해결책이되고지도가 모두 나오고 줄이면 최신 기록을 유지합니까 아니면 미스터를 꺼내지 않고 솔루션이 내장되어 있습니까?
감사합니다. 이러한 접근 방식 모두를 살펴볼 가치가 있다고 생각합니다. 특히 재 감축하는 것이 좋습니다. – Peck
가장 최근의 콜렉션 접근 방식에 대해 생각해 보면 삽입 프로세스에 많은 오버 헤드가 추가되는 것처럼 보입니다. 어쨌든 mongo와 관련된 이유 중 일부 였기 때문에 피하고 싶습니다. 각 ID에 대해 삽입하는 ID로 상태를 검색/제거해야합니다. 이 색인이 붙은 컬렉션과 더 작은 컬렉션 이후로는 빠르지는 않지만 mongo는 삭제를 위해 전체 컬렉션을 잠그는 "문제"가 있습니다. 그렇게하는 것이 큰 타협점이 될 수있는 것처럼 보입니다. – Peck
당신은 매우 빠르게 될'upsert'을 할 수 있습니다. 'upsert'는 * "존재하는 업데이트가있을 경우 다른 것을 만듭니다"*입니다. 따라서 삭제 나 추가 쿼리가 없습니다. JS에서는 다음과 같은'db.most_recent.업데이트 ({_ id : user_id}, {status : "blah"}, false, true)', 언어 드라이버에서 "upsert"를 확인하십시오. –