MongoDB ObjectID로 알아보는 전역 키 관리 전략
개요나는 지난 회사에서도, 토이/사이드 프로젝트를 진행할 때에도 주로 RDB를 사용해왔다. 그래서 그런지 항상 약속한듯이 Primary key 관리 전략으로 Auto-Increment Key(단조 증가하는 정수 키)를 사용해왔다.그러던 중 이직을 하며 트래픽이 매우 큰 서비스를 다루게 되었는데, 이 서비스는 MongoDB라는 NoSQL DB를 사용한다. 그런데 이 DB에서는 ObjectID라는 난수 문자열같이 생긴 값을 Primary Key로 사용하는 것이 아닌가? 처음에는 왜 더 공간 차지도 많이 하고, 범위 정렬도 안 될 것 같은 이런 키를 사용할까? 라는 의문이 들었다. 하지만 이 ObjectID에 대해 학습하게 되면, MongoDB의 설계 철학과 왜 이런 키를 사용하게 되었는지를 이해할 수 있다...