MountTableResolver, MultipleDestinationMountTableResolver@Private
@Evolving
public interface FileSubclusterResolver
Each path in the global/federated namespace may map to 1-N different HDFS locations. Each location specifies a single nameservice and a single HDFS path. The behavior is similar to MergeFS and Nfly and allows the merger of multiple HDFS locations into a single path. See HADOOP-8298 and HADOOP-12077
For example, a directory listing will fetch listings for each destination path and combine them into a single set of results.
When multiple destinations are available for a path, the destinations are prioritized in a consistent manner. This allows the proxy server to guess the best/most likely destination and attempt it first.
| Modifier and Type | Method | Description |
|---|---|---|
java.lang.String |
getDefaultNamespace() |
Get the default namespace for the cluster.
|
PathLocation |
getDestinationForPath(java.lang.String path) |
Get the destinations for a global path.
|
java.util.List<java.lang.String> |
getMountPoints(java.lang.String path) |
Get a list of mount points for a path.
|
static java.util.List<java.lang.String> |
getMountPoints(java.lang.String path,
java.util.Collection<java.lang.String> mountPoints) |
Get a list of mount points for a path.
|
PathLocation getDestinationForPath(java.lang.String path) throws java.io.IOException
path - Global path.java.io.IOException - Throws exception if the data is not available.java.util.List<java.lang.String> getMountPoints(java.lang.String path)
throws java.io.IOException
path - Path to get the mount points under.java.io.IOException - Throws exception if the data is not available.java.lang.String getDefaultNamespace()
static java.util.List<java.lang.String> getMountPoints(java.lang.String path,
java.util.Collection<java.lang.String> mountPoints)
path - Path to get the mount points under.mountPoints - the mount points to choose.Copyright © 2008–2025 Apache Software Foundation. All rights reserved.