org.usergrid.persistence
Interface IndexBucketLocator

All Known Implementing Classes:
SimpleIndexBucketLocatorImpl

public interface IndexBucketLocator

Interface for locating different buckets for indexing entities. These buckets are not intended for user with time series indexing. Rather this a means of partitioning index puts across multiple rows

Author:
tnine

Nested Class Summary
static class IndexBucketLocator.IndexType
           
 
Method Summary
 String getBucket(UUID applicationId, IndexBucketLocator.IndexType type, UUID entityId, String... components)
          Return the bucket to use for indexing this entity
 List<String> getBuckets(UUID applicationId, IndexBucketLocator.IndexType type, String... components)
          Get all buckets that exist for this application with the given entity type, and property name
 

Method Detail

getBucket

String getBucket(UUID applicationId,
                 IndexBucketLocator.IndexType type,
                 UUID entityId,
                 String... components)
Return the bucket to use for indexing this entity

Parameters:
applicationId - The application id
type - The type of the index. This way indexing on the same property value for different types of indexes does not cause collisions on partitioning and lookups
entityId - The entity id to be indexed
components - The strings and uniquely identify the path to this index. I.E entityType and propName, collection name etc This string must remain the same for all reads and writes
Returns:

getBuckets

List<String> getBuckets(UUID applicationId,
                        IndexBucketLocator.IndexType type,
                        String... components)
Get all buckets that exist for this application with the given entity type, and property name

Parameters:
applicationId - The application id
type - The type of index
components - The strings and uniquely identify the path to this index. I.E entityType and propName, collection name etc
Returns:
All buckets for this application at the given component path


Copyright © 2013. All Rights Reserved.