ResourceAllocator¶
ResourceAllocator is an abstraction of resource allocators.
Contract¶
resourceAddresses¶
Used when:
ResourceAllocatoris requested for the addressAvailabilityMap
resourceName¶
Used when:
slotsPerAddress¶
Used when:
ResourceAllocatoris requested for the addressAvailabilityMap, assignedAddrs and to release
Implementations¶
- ExecutorResourceInfo
WorkerResourceInfo(Spark Standalone)
Acquiring Addresses¶
acquire...FIXME
acquire is used when:
DriverEndpointis requested to launchTasksWorkerResourceInfo(Spark Standalone) is requested toacquireandrecoverResources
Releasing Addresses¶
release...FIXME
release is used when:
DriverEndpointis requested to handle a StatusUpdate eventWorkerInfo(Spark Standalone) is requested toreleaseResources
assignedAddrs¶
assignedAddrs...FIXME
assignedAddrs is used when:
WorkerInfo(Spark Standalone) is requested for theresourcesInfoUsed
availableAddrs¶
availableAddrs...FIXME
availableAddrs is used when:
WorkerInfo(Spark Standalone) is requested for theresourcesInfoFreeWorkerResourceInfo(Spark Standalone) is requested toacquireandresourcesAmountFreeDriverEndpointis requested to makeOffers
addressAvailabilityMap¶
addressAvailabilityMap...FIXME
Lazy Value
addressAvailabilityMap is a Scala lazy value to guarantee that the code to initialize it is executed once only (when accessed for the first time) and the computed value never changes afterwards.
Learn more in the Scala Language Specification.
addressAvailabilityMap is used when:
ResourceAllocatoris requested to availableAddrs, assignedAddrs, acquire, release