2010-07-10 4 views
2

MongoDB가 하나의 서버에 대해 얼마나 많은 고유 ID를 생성 할 수 있는지 정확하게 알고 싶습니다.MongoDB가 단일 서버에 대해 생성 할 수있는 고유 ID 수는 얼마나됩니까?

물론 여러 서버의 경우 id 개체의 서버 섹션도 변경되지만 단일 서버에서는 변경 될 부분이 pid 섹션 (2 자리) 및 증가 섹션 (4 자리) 인 것처럼 보입니다. . 이 문제가 잘못되면 나를 바로 잡으십시오.

16 진수로 표시되는 것 중 6 개만 변경되어 단일 서버에 대해 16,777,216 개의 가능한 조합 만있을 것이라고 확신합니다.

내가이 질문을하는 이유는 수십억 개의 고유 한 레코드를 저장하기 위해 MongoDB를 사용할 것이므로 숫자가 계속 커질 것이기 때문입니다.

MongoDB를이 유형의 작업에 사용하는 것이 안전합니까? 수학적 오류나 논리적 오류가 생겨서 죄송합니다.

감사합니다.

답변

3

안전해야합니다. MongoDB 자체에서 ID를 생성하게되면 12-byte value을 생성합니다.이 중 4 바이트는 기원부터 초이고 3 바이트는 카운터입니다. 이는 서버 당 7.20 * 10^16 (즉, 2^(7 * 8)) 문서 및 초당 서버 당 1600 만 (2^(3 * 8)) 문서에 충분합니다.

+0

도움 주셔서 감사합니다. 이 경우에 고유 ID가 부족할 것입니다. ;) –

관련 문제