|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectmondrian.rolap.RolapAggregationManager
mondrian.rolap.agg.AggregationManager
public class AggregationManager
RolapAggregationManager manages all Aggregations
in the system. It is a singleton class.
| Nested Class Summary | |
|---|---|
static class |
AggregationManager.PinSetImpl
Implementation of RolapAggregationManager.PinSet
using a HashSet. |
| Nested classes/interfaces inherited from class mondrian.rolap.RolapAggregationManager |
|---|
RolapAggregationManager.PinSet |
| Field Summary | |
|---|---|
SegmentCacheManager |
cacheMgr
|
| Constructor Summary | |
|---|---|
AggregationManager(MondrianServer server)
Creates the AggregationManager. |
|
| Method Summary | |
|---|---|
RolapAggregationManager.PinSet |
createPinSet()
Creates a RolapAggregationManager.PinSet. |
static AggStar |
findAgg(RolapStar star,
BitKey levelBitKey,
BitKey measureBitKey,
boolean[] rollup)
Finds an aggregate table in the given star which has the desired levels and measures. |
static Pair<String,List<SqlStatement.Type>> |
generateSql(GroupingSetsList groupingSetsList,
List<StarPredicate> compoundPredicateList)
Generates the query to retrieve the cells for a list of segments. |
CacheControl |
getCacheControl(RolapConnection connection,
PrintWriter pw)
Returns an API with which to explicitly manage the contents of the cache. |
Object |
getCellFromAllCaches(CellRequest request)
|
Object |
getCellFromCache(CellRequest request)
Retrieves the value of a cell from the cache. |
Object |
getCellFromCache(CellRequest request,
RolapAggregationManager.PinSet pinSet)
|
String |
getDrillThroughSql(DrillThroughCellRequest request,
StarPredicate starPredicateSlicer,
List<Exp> fields,
boolean countOnly)
Generates a SQL statement which will return the rows which contribute to this request. |
org.apache.log4j.Logger |
getLogger()
Returns the log4j logger. |
static AggregationManager |
instance()
Deprecated. No longer a singleton, and will be removed in mondrian-4. Use MondrianServer.getAggregationManager().
To get a server, call
MondrianServer.forConnection(mondrian.olap.Connection),
passing in a null connection if you absolutely must. |
static void |
loadAggregation(SegmentCacheManager cacheMgr,
int cellRequestCount,
List<RolapStar.Measure> measures,
RolapStar.Column[] columns,
AggregationKey aggregationKey,
StarColumnPredicate[] predicates,
GroupingSetsCollector groupingSetsCollector,
List<Future<Map<Segment,SegmentWithData>>> segmentFutures)
Called by FastBatchingCellReader.load where the RolapStar creates an Aggregation if needed. |
void |
shutdown()
|
| Methods inherited from class mondrian.rolap.RolapAggregationManager |
|---|
getCacheCellReader, makeCacheRegion, makeDrillThroughRequest, makeRequest, makeRequest |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public final SegmentCacheManager cacheMgr
| Constructor Detail |
|---|
public AggregationManager(MondrianServer server)
| Method Detail |
|---|
public final org.apache.log4j.Logger getLogger()
public static AggregationManager instance()
MondrianServer.getAggregationManager().
To get a server, call
MondrianServer.forConnection(mondrian.olap.Connection),
passing in a null connection if you absolutely must.
public static void loadAggregation(SegmentCacheManager cacheMgr,
int cellRequestCount,
List<RolapStar.Measure> measures,
RolapStar.Column[] columns,
AggregationKey aggregationKey,
StarColumnPredicate[] predicates,
GroupingSetsCollector groupingSetsCollector,
List<Future<Map<Segment,SegmentWithData>>> segmentFutures)
cacheMgr - Cache managercellRequestCount - Number of missed cells that led to this requestmeasures - Measures to loadcolumns - this is the CellRequest's constrained columnsaggregationKey - this is the CellRequest's constraint keypredicates - Array of constraints on each columngroupingSetsCollector - grouping sets collectorsegmentFutures - List of futures into which each statement will
place a list of the segments it has loaded, when it completes
public CacheControl getCacheControl(RolapConnection connection,
PrintWriter pw)
connection - Server whose cache to controlpw - Print writer, for tracing
public Object getCellFromCache(CellRequest request)
RolapAggregationManager
getCellFromCache in class RolapAggregationManagerrequest - Cell request
Util.nullValue if cell's value is null
public Object getCellFromCache(CellRequest request,
RolapAggregationManager.PinSet pinSet)
getCellFromCache in class RolapAggregationManagerpublic Object getCellFromAllCaches(CellRequest request)
public String getDrillThroughSql(DrillThroughCellRequest request,
StarPredicate starPredicateSlicer,
List<Exp> fields,
boolean countOnly)
RolapAggregationManager
getDrillThroughSql in class RolapAggregationManagerrequest - Cell requeststarPredicateSlicer - A StarPredicate representing slicer positions
that could not be represented by the CellRequest, or
null if no additional predicate is necessary.countOnly - If true, return a statment which returns only the count
public static Pair<String,List<SqlStatement.Type>> generateSql(GroupingSetsList groupingSetsList,
List<StarPredicate> compoundPredicateList)
public static AggStar findAgg(RolapStar star,
BitKey levelBitKey,
BitKey measureBitKey,
boolean[] rollup)
If there no aggregate is an exact match, returns a more granular aggregate which can be rolled up, and sets rollup to true. If one or more of the measures are distinct-count measures rollup is possible only in limited circumstances.
star - StarlevelBitKey - Set of levelsmeasureBitKey - Set of measuresrollup - Out parameter, is set to true if the aggregate is not
an exact match
public RolapAggregationManager.PinSet createPinSet()
RolapAggregationManagerRolapAggregationManager.PinSet.
createPinSet in class RolapAggregationManagerpublic void shutdown()
|
|
||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||