Package mondrian.rolap
Class BatchLoader
- java.lang.Object
-
- mondrian.rolap.BatchLoader
-
class BatchLoader extends java.lang.Object
Context for processing a request to the cache manager for segments matching a collection of cell requests. All methods except the constructor are executed by the cache manager's dedicated thread.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
BatchLoader.Batch
(package private) static class
BatchLoader.CompositeBatch
Set of Batches which can grouped together.static class
BatchLoader.LoadBatchCommand
Command that loads the segments required for a collection of cell requests.(package private) static class
BatchLoader.LoadBatchResponse
Request sent from cache manager to a worker to load segments into the cache, create segments by rolling up, and to wait for segments being loaded via SQL.static class
BatchLoader.RollupInfo
-
Constructor Summary
Constructors Constructor Description BatchLoader(Locus locus, SegmentCacheManager cacheMgr, Dialect dialect, RolapCube cube)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) static void
addToCompositeBatch(java.util.Map<AggregationKey,BatchLoader.CompositeBatch> batchGroups, BatchLoader.Batch detailedBatch, BatchLoader.Batch summaryBatch)
(package private) static java.util.List<BatchLoader.CompositeBatch>
groupBatches(java.util.List<BatchLoader.Batch> batchList)
(package private) BatchLoader.LoadBatchResponse
load(java.util.List<CellRequest> cellRequests)
Determines which segments need to be loaded from external cache, created using roll up, or created using SQL to satisfy a given list of cell requests.(package private) boolean
shouldUseGroupingFunction()
-
-
-
Constructor Detail
-
BatchLoader
public BatchLoader(Locus locus, SegmentCacheManager cacheMgr, Dialect dialect, RolapCube cube)
-
-
Method Detail
-
shouldUseGroupingFunction
final boolean shouldUseGroupingFunction()
-
load
BatchLoader.LoadBatchResponse load(java.util.List<CellRequest> cellRequests)
Determines which segments need to be loaded from external cache, created using roll up, or created using SQL to satisfy a given list of cell requests.- Returns:
- List of segment futures. Each segment future may or may not be already present (it depends on the current location of the segment body). Each future will return a not-null segment (or throw).
-
groupBatches
static java.util.List<BatchLoader.CompositeBatch> groupBatches(java.util.List<BatchLoader.Batch> batchList)
-
addToCompositeBatch
static void addToCompositeBatch(java.util.Map<AggregationKey,BatchLoader.CompositeBatch> batchGroups, BatchLoader.Batch detailedBatch, BatchLoader.Batch summaryBatch)
-
-