MongoDB 에서 _id 의 의미



_id 란 무엇일까?


MongoDB에서 document를 insert 해보았는가?

insert를 한 후에, find로 확인해보면 _id 라는 field가 있는 것을 알 수 있다.

우리가 따로 추가하지도 않았는데 생기는 이 _id는 무엇이고 왜 있는 것일까?

MongoDB를 이용하다 보면 , 어떤 Collection에서 '유일한' 문서를 뽑아내야 할 때 가 있다.

물론, 이 문서의 field가 다른 문서들과 확연히 차이가 난다면 쉽게 findOne으로 찾아 낼 수 있겠지만, 만약 field가 완전히 똑같은 문서들이라면?

field가 완전히 똑같은 문서들이라도 각각 문서들에는 '유일성'이 있어야 한다.

그렇게 해서 나온 것이 '_id' field이다.

field가 같은 어느 문서건, _id field까지 같을 순 없다.

MongoDB는 이와같이, _id를 통해 document에 유일성을 부여한다.