2013-08-28 3 views
1

우리는 mongodb id로 문자열 ID를 사용해야하는 응용 프로그램을 작성 중입니다. 내 질문은 다음과 같습니다. mongodb에서 샤딩을하면 문자열 ID로 인해 문제가 발생합니까?MongoDb 샤딩 및 문자열 id

+0

문자열의 예를 들어 주시겠습니까? – Sammaye

답변

0

아니요, 그들은 샤드되기 전에 해시 될 수 있습니다. (컴퓨터 전원에 약간의 비용이 들지만).

+0

해시 인덱스를 만드는 경우에만 해시됩니다. – Sammaye

+0

@Sammaye 물론 가능합니다. 나는이 점에 좀 더 구체적으로 대답을 수정했다. – Daren

1

문자열의 내용에 크게 의존합니다. 예를 들어, 성 (Surname)은 일반적으로 에 대한 잘못된 샤드 키를 만듭니다. 균형이 맞춰지기 때문에 거의 모든 언어로 성이 시작됩니다. 그러나이 문제는 tag based sharding으로 해결할 수 있습니다. 그러나 스케일링 할 때 상당히 많은 지식과 구성이 필요합니다.

문자열의 해시는 이미 언급했으나 정확한 지리적 위치를 지리적 위치에 할당 할 수 없기 때문에 지리적으로 분산 된 데이터 센터에 문제가 발생할 수 있다고 덧붙이고 싶습니다. ID가 (부분적으로) 만들어 졌을 경우에 더 많은 정보가 필요합니다.

다른 해결책은 화합물 샤드 키를 사용하는 것입니다.