123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401 |
- # Licensed Materials - Property of IBM
- # IBM Cognos Products: OQP
- # (C) Copyright IBM Corp. 2005, 2017
- # US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM corp.
- #
- # OLAP Metadata for DMR queries.
- #
- #
- # MDX Optimizations
- # This configuration flags says whether the provider supports replacing the aggregate of child members with the parent
- # when XQE believes this will be true. This is not guaranteed to work for all providers, so this setting must default
- # to false.
- #
- mdx.optimize.parentmember=true
- #
- # Null behavior of comparison operators (=, !=, <, <=, >, >=) in the MDX engine.
- # This should be set to "null" or "zero".
- # When set to null, expressions such as "null < number" and "number < null" will evaluate to null.
- # When set to zero, null is treated as zero.
- #
- null.comparison.operator=null
- #
- # Null behavior of boolean operators (and, or, xor) in the MDX engine.
- # This should be set to "null" or "false".
- #
- null.boolean.operator=null
- #
- # Null behaviour in the MDX engine for the arithmetic operators: +, -. *, /, %
- # When null.divide.denominator is set to zero, a number divided by null will return /0.
- # When null.divide.denominator is set to null, a number divided by null will return null.
- #
- null.plus.operator=null
- null.minus.operator=null
- null.multiply.operator=null
- null.divide.numerator=null
- null.divide.denominator=null
- null.modulo.dividend=null
- null.modulo.divisor=null
- #
- # Null behaviour in the MDX engine vb functions (Abs, Int, Round).
- #
- null.vb.math.function=null
- #
- # When processing an MDX if a member is not found, by default the mdx engine
- # throws an exception. Setting this parameter to "true", however, will trigger the
- # engine to create a null member for that member and continue the processing.
- #
- mdx.useNullForNonExistingMember=true
- #
- # This property controls how ambiguous an ambiguous dimension identifier is resolved
- # within the MDX engine, when the dimension has a single hierarchy.
- #
- # For example, with a Cube with a level unique name of [Sales].[Product].[Product],
- # the identifer [Sales].[Product] could be referring to the level or to the hierarchy.
- #
- # This property can have the following values:
- #
- # level - The identifier will be resolved as a level
- # hierarchy - The identifier will be resolved as a hierarchy
- #
- mdx.level.hierarchy.ambiguity.resolution=hierarchy
- #
- # V5 Member and Measure Detail Filter timing for the postAutoAggregation flag.
- #
- # reportDetails: Apply the filter along with Summary Filters to the details of the report. This would mean it happens after OLAP functions such as TOPCOUNT, as an example.
- # virtualDetails: Apply the filter to the virtual details cube at the lowest projected levels. This would mean it happens before OLAP functions such as TOPCOUNT, as an example.
- #
- # Not that OR filters between different hierarchies are virtualDetails by default and this is not yet configurable.
- #
- v5.postAutoAggregation.timing=reportDetails
- #
- # MDX Support for OLYMPIC rank with implicit sort
- #
- mdx.support.olympicRankSort=false
- #
- # Property to enable DMR cube reuse
- #
- enableDMRcubeReuse=true
- #
- # Property to set the maximum size(M) of DMR ResultSet cache.
- # ResultSet cache is part of DMR reuseable cube.
- # ResultSet cache is automatically disabled when enableDMRcubeReuse is turned off.
- # Default value is 50M.
- # 0 or negative value disables DMR ResultSet cache.
- #
- dmrResultSetCacheSize=50
- #
- # V5 master-detail optimization when allRows optimization is specified
- #
- v5.master-detail.transform=true
- # false - generating parameterized detail filter to detail query ( default )
- # true - generating extra edge to detail query
- #
- # If true, we issue one subquery per measure.
- # Temporary switch until we know how the measures are defined over the relational table.
- #
- oneMeasurePerSubquery=false
- #
- # This property instructs the planner to plan the query by ignoring (=true) or not (=false)
- # the v5 suppress query hint XML element. When the planner ignore it, the query planned
- # as per suppress query hint default value (i.e. when not specified).
- # The default property value (including when not specified) is false.
- # The initial usage of this property is to overwrite the ANS default behavior specifying suppress query hint to NONE
- # by default, without ability to change it.
- # This property has to be carefully used since it impact all planned V5 query (global planner settings) for
- # all planned V5 queries.
- # Do not change this value unless directed to by IBM.
- #
- v5.suppress.queryhint.ignore=false
- # This property controls whether the query engine should automatically inject a pre auto aggregation
- # measure detail filter to assist the V5 suppression of nulls.
- #
- #v5.suppress.nulls.usePreAutoAggregationMeasureDetailFilter=true
- #
- # Enable the member storage.
- #
- enableDMRmemberStorage=true
- #
- # This property tells whether the provider may filter the data before applying the MDX.
- # It may take one of this values:
- # - always: the provider always filter the data before applying the MDX,
- # - never: the provider never filter the data before applying the MDX,
- # - forNonEmpty: Only in the presence of MDX edge NON EMPTY the provider filters the data before applying the MDX.
- #
- datasource.appliesFilterBeforeMDX=always
- #
- # If true, we load other report measures when loading measure for a crossjoinedset.
- #
- loadOtherReportMeasuresWhenLoadMeasure=true
- #
- # If true, DMR will push down the aggregate expression that can not be calculated internally
- # to the relational database.
- # If false, DMR will return an error cell "--" instead.
- #
- pushdownExtAggregatesToRelational=true
- #
- # If true, DMR will push down the evaluation of
- # TopBottomCount, Head, and Filter expression to the relational database
- # through CustomSet function.
- #
- enablePushdownThroughCustomSet = false
- #
- # If true, DMR will push down the evaluation of the TopBottomCount expression to the relational database
- #
- pushdownTopBottomCountToRelational=false
- #
- # If true, DMR will push down the evaluation of the TopPercent/Sum expression to the relational database
- #
- pushdownTopPercentSumToRelational=false
- #
- # If true, DMR will push down the evaluation of the Filter expression to the relational database
- #
- pushdownFilterToRelational=false
- #
- # If true, DMR will push down the evaluation of calculations in filter pushdown to the relational database
- #
- pushdownCalculationsInFilterPushdownToRelational=false
- #
- # If true, DMR will push down the evaluation of the Head/Tail expression to the relational database
- #
- pushdownHeadTailToRelational=false
- #
- # If true, DMR will push down by CustomValue function the evaluation of the calculated member to the relational database
- # when this calculation involves Descendants function over a non projected large level.
- #
- pushdownCustomValueToRelational=false
- #
- # If true, the input set for the Topcount operator is filtered when pushdown is on
- #
- enableFilterSetInPushDownMode=false
- #
- # If true, the coalesce function is used for rank when pushdown is on.
- #
- enableCoalesceRankInPushDownMode=true
- #
- # If true, the coalesce function is used for filter when pushdown is on.
- #
- enableCoalesceFilterInPushDownMode=true
- #
- # The minimum size of the set in top/bottom count pushdown mode.
- #
- topBottomCountPushdownMinimumSetSize=100000
- #
- # The minimum size of the set in filter pushdown mode.
- #
- FilterPushdownMinimumSetSize=100000
- #
- # Controls if DMR will try loading multiple level of cell values
- # using single SQL query involving windowed aggregate functions.
- # Valid values are 0, 1, and 2.
- # When 0, SQL query generated to load each individual combination
- # of aggregation. In other words, no optimization.
- # When 1, Loading multiple level of cell values using single SQL query.
- # The SQL query loads all combination of aggregations,
- # regardless if it's required or not by the query.
- # When 2 (default value), Loading multiple level of cell values using single SQL query.
- # The SQL query only loads combination of aggregations
- # that are required by the query.
- dmrSummaryQueryOptimizationLevel=2
- #
- # Control maximum number of aggregations that single cube loading query
- # is allowed to have. The complexity of SQL query increases when aggregations number grows.
- #
- dmrMaximumNumberOfAggregationsInCubeLoadingQuery=10
- #
- # If merge, member loading will be incremental. Only required members in a query will be loaded.
- # If true, member loading will be incremental. It might load extra members not required by the current query.
- # Otherwise entire level or levels will be loaded into cube.
- #
- enableIncrementalMemberLoading=merge
- #
- # Only used when enableIncrementalMemberLoading is ture.
- # Maximum number of restriction members allowed on a level without loading entire level
- #
- restrictionMembersCountThreshold=1000
- #
- # number of levels to fetch members from
- #
- dmrNumberOfLevelsToIncludeInMultipleLevelFetch=3
- #
- # Specify whether or not the provider will be sub-queried for MUNs.
- # This feature is not required for this datasource and thefore not supported.for it
- #
- queryProviderForMUNs=false
- #
- # This property controls how to handle the projection of nested levels of the same hierarchy.
- # Specifically the use of the technique involving nested level decoration rules.
- # In that case the planner queries only the lowest level members, later the post-processing queries the outer levels if required.
- # - always: always use this technique
- # - never: never use this technique
- # - automatic: allow the planner to decide whether to use or not this technique.
- #
- applyNestedLevelDecorationRules=always
- #
- # This property controls how to handle the DMR cell fetching for the same CJS in multi-threads case.
- # If true, If this is not the first thread trying to execute the query, block it until the first
- # thread finishes and this thread can use the cached data.
- #
- blockingFetchingSameCells=true
- #
- # This property controls how to handle the pre-planning in multi-threads case.
- # If true, If this is not the first thread trying to pre-plan the query, block it until the first
- # thread finishes and this thread can use the cached data.
- #
- blockingPrePlanSameMetaDataObjects=true
- #
- # This property controls how to handle the DMR execution for the same MDX in multi-threads case.
- # If true, If this is not the first thread trying to execute the MDX, block it until the first
- # thread finishes and this thread can use the cached data.
- blockingSameMDXExecution=true
- #
- # This property controls how to handle the DMR report using only levels from multiple hierarchies (measure is not used).
- # the options:
- # 0: do cross-join as other OLAP providers.
- # 1: use the first fact table (this is the default behavior in RQP for list report).
- # 2: stitch by rows (RQP can turn on this behavior).
- # 3: throw exception (if the cross-join result is too big)
- stitchMultiHierLevelsForReportWithoutMeasure=0
- #
- # This property controls two things:
- # a. if pre-loading the cells is enabled for temporary DMR Cube (Cache is disabled).
- # any positive number will enable pre-loading for temporary DMR Cube (Cache is disabled).
- # b. the maximum cell count for pre-loading. If the number of required cells exceeds this threshold, don't pre-load.
- preLoadCellCountThreshold=10000
- # How will DMRQueryStrategy load cells after preloading is successful?
- # OverLoad: Might over load cells. This is the current DMRQueryStrategy behavior.
- # NoLoad: don't load any new cells. Assuming pre-loading loads all required cells.
- # PreciseLoad: use the same rule as Pre-loading. Just load the cells required by the MDX engine.
- # default is PreciseLoad
- CellFetchingAfterPreloading=NoLoad
- #
- # For local MDX engine to decide if splitting a symmetric query for a requested set of tuples into
- # multiple more precise queries is worthwhile.
- # The heuristic for determining whether to split a requested set into multiple queries is:
- # if (symmetricTuples - requiredTuples > minExcessTuplesForSplitQuery
- # && symmetricTuples / requiredTuples > excessTuplesRatioForSplitQuery)
- # When either threshold is set to -1, a requested set of tuples is never split into multiple queries.
- #
- lolap.minExcessTuplesForSplitQuery=0
- lolap.excessTuplesRatioForSplitQuery=0
- #
- # This property controls if DMR cube is loaded with a single sub-query.
- # If false, single loading is disabled.
- # If true, single loading might be used depending on other conditions.
- # If auto, fact driven cube loading might be applied.
- enablePreLoadCubeWithSingleSubQuery=auto
- #
- # If the Order Of Magnitude of a Level used in set function is larger than this setting,
- # DMR will push down the evaluation of set function like
- # TopBottomCount, Head, and Filter expression to the relational database
- # through CustomSet function.
- #
- PushdownThroughCustomSetForLevelOOMLargerThan=3.3
- # This property controls if relative function needs to be expanded when cube is not reused.
- expandRelativeFunctionCubeNotReuse=false
- # If true, level property is loaded when member is loaded even if the BusinessKey and Property are from different tables.
- # If false, level property is not loaded when member is loaded if the BusinessKey and Property are from different tables.
- loadLevelPropertyWithMember=false
- # if fact driven cube loading is not possible and large level is used, throw error.
- # This setting is used when enablePreLoadCubeWithSingleSubQuery=auto
- ThrowNoFactDrivenLoadingForLevelOOMLargerThan=4.7
- # if true, the sub-query for customset might use SQL TopN feature.
- # if false, the sub-query for customset uses rank in detail filter.
- CustomSetUseTopN=true
- # 0: don' resort. members are returned from higher to lower levels in hierarchy order.
- # 1: members are returned from higher to lower levels. In each level, resorted by caption (asc).
- # 2: members are resorted by caption (asc).
- ReSortMembersFromHierarchySearch=0
- #
- # This property controls if marking a dmr level as unique has impact on the SQL generation for
- # fetching cell value queries. When enabled the generated predicates only include terms up to and
- # including the level that is unique.
- #
- enableUniqueLevelSupport=true
- #
- # This property controls whether pre load cube optimization will be applied to a query or not
- # when the query already contains PushdownThroughCustomSet optimization.
- #
- enablePreLoadCubeDuringPushdown=true
- # If this is set to a positive number N and
- # code thinks the simple list V5 is from CWA dialog box and
- # the order of magnitude of involved level is larger than (or equals to) ThrowNoFactDrivenLoadingForLevelOOMLargerThan
- # add TopN to load and return the N members.
- CWADialogBoxTopN=0
- # maximum number of members being added into detail filter of DMR sub-query.
- maxMembersInSubQueryDetailFilter=2000
- # keep dimension shortcut in model calculation
- keepDimensionShortcutInModelCalculation=true
- # for DMR measure with aggregateType=Calculated, DMR sub-query generates aggregate(xxx for a, b, ..)
- # If this setting is true, the aggregate function will have a property: calculated=true.
- # RQP will try to decompose the first parameter of aggregate function.
- decomposeDMRCalculatedMeasure=false
- # disable bridge.
- disableBridge=false
- # If it is true, and, fact driven cube loading is enabled (enablePreLoadCubeWithSingleSubQuery=auto),
- # the aggregate rule will be applied in query context.
- contextDependentIgnoreNullsAggregateRule=false
|