ObjectID란? ObjectID는 몽고디비의 data type 중 하나로, 주로 PK의 데이터 타입으로 사용된다. 몽고디비의 모든 도큐먼트는 _id 필드를 가진다. _id는 어떤 타입이여도 상관없지만 컬렉션 내에서 unique해야 한다. _id의 디폴트 타입은 ObjectID 타입이며, ObjectID를 개발자가 입력하지 않았다면 MongoDB 드라이버가 만들어준다. rdb에서처럼 auto_increment하는 키를 pk로 사용하지않는 이유는 몽고디비가 분산 환경에서 사용되기 때문이다. (샤딩된 환경에서 고유 식별자로 사용) ObjectID는 위 그림과 같이 12바이트이며, 시간+랜덤 값+count의 조합이다. count도 랜덤 값으로 서로 다른 시스템에서 충돌되지 않는 ObjecdtID를 생성하지 ..