ApplicationCache
ApplicationCache is…FIXME
ApplicationCache uses Google Guava 14.0.1 library for the internal appLoader.
| Name | Description |
|---|---|
|
|
Google Guava’s CacheLoader with a custom load which is simply loadApplicationEntry. Used when…FIXME |
|
|
|
|
|
Google Guava’s LoadingCache of Used when
|
|
|
Creating ApplicationCache Instance
ApplicationCache takes the following when created:
ApplicationCache initializes the internal registries and counters.
loadApplicationEntry Internal Method
|
1 2 3 4 5 |
loadApplicationEntry(appId: String, attemptId: Option[String]): CacheEntry |
loadApplicationEntry…FIXME
|
Note
|
loadApplicationEntry is used exclusively when ApplicationCache is requested to load a cached entry.
|
Loading Cached Spark Application UI — load Method
|
1 2 3 4 5 |
load(key: CacheKey): CacheEntry |
|
Note
|
load is part of Google Guava’s CacheLoader to retrieve a CacheEntry, based on a CacheKey, for LoadingCache.
|
load simply relays to loadApplicationEntry with the appId and attemptId of the input CacheKey.
Requesting Cached UI of Spark Application (CacheEntry) — get Method
|
1 2 3 4 5 |
get(appId: String, attemptId: Option[String] = None): CacheEntry |
get…FIXME
|
Note
|
get is used exclusively when ApplicationCache is requested to execute a closure while holding an application’s UI read lock.
|
Executing Closure While Holding Application’s UI Read Lock — withSparkUI Method
|
1 2 3 4 5 |
withSparkUI[T](appId: String, attemptId: Option[String])(fn: SparkUI => T): T |
withSparkUI…FIXME
|
Note
|
withSparkUI is used when HistoryServer is requested to withSparkUI and loadAppUi.
|
spark技术分享