2017-05-05 12 views
3

나는 내 컬렉션에 대한 인덱싱 정책을 작성하고, 즉, 해시 인덱스의 문자열에 대한 올바른 "정밀"가 무엇인지 알아 내려고 노력하고있어제일 정밀

collection.IndexingPolicy.IncludedPaths.Add(
new IncludedPath { 
    Path = "/customId/?", 
    Indexes = new Collection<Index> { 
     new HashIndex(DataType.String) { Precision = 20 } } 
}); 

이있을 것입니다 약 10,000 개의 서로 다른 customId가 있으므로 올바른 "정밀도"는 무엇입니까? 100,000,000 개 이상의 ID를 얻으면 어떻게 될까요?

답변

1

약 10,000 개의 서로 다른 customId가 있으므로 올바른 "정밀도"는 무엇입니까? 100,000,000 개 이상의 ID를 얻으면 어떻게 될까요? 앤드류 리우으로

this thread에서 말했다 : 해시 인덱스에 대한 색인 정밀도에 속성 값을 해시 바이트 수를 나타냅니다.

우리가 알다시피, 1 바이트 = 8 비트로 2^8 = 256 값을 유지할 수 있습니다. 2 바이트는 2^16 = 65,536 값을 저장할 수 있습니다. 유사한 계산을 수행하여 property customId의 경로가 포함될 것으로 예상되는 문서 수를 기준으로 인덱싱 정밀도를 얻을 수 있습니다. 인덱스 정밀도를 지정할 때

게다가, 당신은 인덱스 스토리지 오버 헤드 및 쿼리 성능 사이 지수 정밀 섹션 this article과 트레이드 오프를 참조 할 수있다.

+0

이미 [해당 문서] (https://docs.microsoft.com/en-us/azure/documentdb/documentdb-indexing-policies)를 읽었지만 [Andrew Liu 's] (http : //stackoverflow.com/questions/32732858/documentdb-guid-index-precision). 고맙습니다! 매우 도움이됩니다. – Vej