COUNT
-
[MongoDB] collection.count(), collection.countDocuments({})Software Development/Database 2022. 1. 14. 00:48
MongoDB에서 흔히 전체 문서가 얼마나 저장되어 있는지 세기 위해서 db.collection.find({}).count(), db.collection.count()를 실행합니다. 그러나 위의 방법은 권장하지 않습니다. 왜냐하면 find({}) 처럼 쿼리에 조건이 없거나 그냥 count()를 실행할 경우, 메타데이터에서 값을 가져오기 때문입니다. 메타데이터에서 값을 가져오기 때문에 실행하면 굉장히 빠르게 값을 반환하는 것을 볼 수 있습니다. 이런 현상은 몽고디비가 샤딩됐을 때, 고아 문서가 적절히 필터링되지 못하거나 몽고디비가 비정상적으로 종료하게 되면 count가 적절하지 않을 수 있습니다. Wired Tiger storage engine을 쓰는 mongod가 비정상적으로 종료됐을 때 count()가..