public interface StorageLocationSelectorStrategy
StorageLocations for segment distribution.
Only a snapshot of the locations is returned here. The implemntations currently do not handle all kinds of
concurrency issues and accesses to the underlying storage. Please see
https://github.com/apache/druid/pull/8038#discussion_r325520829 of PR https://github
.com/apache/druid/pull/8038 for more details.| Modifier and Type | Method and Description |
|---|---|
Iterator<StorageLocation> |
getLocations()
Finds the best ordering of the
StorageLocations to load a DataSegment according to
the location selector strategy. |
Iterator<StorageLocation> getLocations()
StorageLocations to load a DataSegment according to
the location selector strategy. This method returns an iterator instead of a single best location. The
caller is responsible for iterating over the locations and calling StorageLocation.reserve(java.lang.String, org.apache.druid.timeline.DataSegment)
method. This is because a single location may be problematic like failed disk or might become unwritable for
whatever reasons.
This method can be called by different threads and so should be thread-safe.StorageLocations from which the callers can iterate and pick a location.Copyright © 2011–2021 The Apache Software Foundation. All rights reserved.