ShuffleClient — Contract to Fetch Shuffle Blocks
ShuffleClient is the contract of clients that can fetch shuffle block files.
ShuffleClient can optionally be initialized with an appId (that actually does nothing by default)
ShuffleClient has shuffle-related Spark metrics that are used when BlockManager is requested for a shuffle-related Spark metrics source (only when Executor is created for a non-local / cluster mode).
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
package org.apache.spark.network.shuffle; abstract class ShuffleClient implements Closeable { // only required methods that have no implementation // the others follow abstract void fetchBlocks( String host, int port, String execId, String[] blockIds, BlockFetchingListener listener, TempFileManager tempFileManager); } |
| Method | Description |
|---|---|
|
|
Fetches a sequence of blocks from a remote block manager node asynchronously Used exclusively when |
| ShuffleClient | Description |
|---|---|
init Method
|
1 2 3 4 5 |
void init(String appId) |
init does nothing by default.
|
Note
|
|
Requesting Shuffle-Related Spark Metrics — shuffleMetrics Method
|
1 2 3 4 5 |
MetricSet shuffleMetrics() |
shuffleMetrics returns an empty Dropwizard Metrics’ MetricSet by default.
|
Note
|
shuffleMetrics is used exclusively when BlockManager is requested for a shuffle-related Spark metrics source (only when Executor is created for a non-local / cluster mode).
|
spark技术分享