RangePartitionResolver Class
Updated: June 30, 2017
RangePartitionResolver implements partitioning in Azure DocumentDB database service by using a partition map of ranges of values to a collection self-link. This works well when the data is naturally ordered and commonly queried upon using ranges of values, e.g., for time series data or alphabetical ranges of strings.
Assembly: Microsoft.Azure.Documents.Client (in Microsoft.Azure.Documents.Client.dll)
| Name | Description | |
|---|---|---|
![]() | RangePartitionResolver | Initializes a new instance of the HashPartitionResolver in the Azure DocumentDB database service using the specified partitionKeyExtractor value. |
![]() | RangePartitionResolver | Initializes a new instance of the RangePartitionResolver class in the Azure DocumentDB database service using the specified partitionKeyPropertyName value. |
| Name | Description | |
|---|---|---|
![]() | Equals | (Inherited from Object.) |
![]() | Finalize | (Inherited from Object.) |
![]() | GetHashCode | (Inherited from Object.) |
![]() | GetPartitionKey | |
![]() | GetType | (Inherited from Object.) |
![]() | MemberwiseClone | (Inherited from Object.) |
![]() | ResolveForCreate | Given a partition key, returns the correct collection self-link for creating a document using the range partition map in the Azure DocumentDB database service. |
![]() | ResolveForRead | Given a partition key, returns a list of collection links to read from using the range partition map in the Azure DocumentDB database service. |
![]() | ToString | (Inherited from Object.) |
| Name | Description | |
|---|---|---|
![]() | IsDefined | Determines if a certain property is defined or not. (Defined by TypeCheckFunctionsExtensions.) |
![]() | IsNull | Determines if a certain property is null or not. (Defined by TypeCheckFunctionsExtensions.) |
![]() | IsPrimitive | Determines if a certain property is of premitive JSON type. (Defined by TypeCheckFunctionsExtensions.) |
Support for IPartitionResolver based classes is now obsolete. It's recommended that you use Partitioned Collections for higher storage and throughput.
In range partitioning, partitions are assigned based on whether the partition key is within a certain range. The RangePartitionResolver class helps you maintain a mapping between a Range and collection self-link.
Range is a simple class for specifying ranges of any types that implement IComparable and IEquatable like strings or numbers. For reads and creates, you can pass in any arbitrary range, and the resolver identifies all the candidate collections by identifying the ranges of the partitions that intersect twith the requested range.
A special case of range partitioning is when the range is just a single discrete value, sometimes called Lookup Partitioning. This is commonly used for partitioning by discrete values like Region or Type or for partitioning tenants in a multi-tenant application.
Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.


