⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 configuration.html

📁 基于mondrian 开源框架进行OLAP多维分析
💻 HTML
📖 第 1 页 / 共 4 页
字号:
        <code>        <a href="api/mondrian/olap/MondrianProperties.html#NullOrZeroDenominatorProducesNull">mondrian.olap.NullOrZeroDenominatorProducesNull</a></code></td>      <td>boolean</td>      <td>false</td>      <td>          If a division has a non-null numerator and a null denominator,          it evaluates to "Infinity", which conforms to MSAS behavior. However,          the old semantics of evaluating this to NULL(non MSAS conforming), is          useful in some applications. This properties controls whether the          result should be NULL when denominator is NULL or zero.      </td>    </tr>    <tr>        <td>            <code>                <a href="api/mondrian/olap/MondrianProperties.html#NeedDimensionPrefix">mondrian.olap.elements.NeedDimensionPrefix</a></code>        </td>        <td>boolean</td>        <td>false</td>        <td>            <p>Property determines if elements of dimension (levels, hierarchies,                members) need to be prefixed with dimension name in MDX query.                For example when the property is true, the following queries                will error out. The same queries will work when this property                is set to false.            <blockquote>            <p>            <ul>                <li><code>select {[M]} on 0 from sales</code></li>                <li><code>select {[USA]} on 0 from sales</code></li>                <li><code>select {[USA].[CA].[Santa Monica]} on 0 from sales</code></li>            </ul>            </blockquote>            <p>            When the property is set to true, any query where elements are            prefixed with dimension name as below will work            <blockquote>            <p>            <ul>                <li><code>select {[Gender].[F]} on 0 from sales</code></li>                <li><code>select {[Customers].[Santa Monica]} on 0 from sales</code></li>            </ul>            </blockquote>            <p>            Please note that this property does not govern the behaviour where in            <blockquote>            <p>                <li><code>[Gender].[M]</code></li>            </blockquote>            <p>            is resolved into a fully qualified            <blockquote>            <p>            <li><code>[Gender].[All Gender].[M]</code></li>            </blockquote>            <p>In a scenario where the schema is very large and dimensions have            large number of members a MDX query that has a invalid member in it            will cause mondrian to to go through all the dimensions, levels,            hierarchies, members and properties trying to resolve the element            name. This behaviour consumes considerable time and resources on the            server. Setting this property to true will make it fail fast in a             scenario where it is desirable        </td>    </tr>    <tr>      <td>        <code>        <a href="api/mondrian/olap/MondrianProperties.html#IgnoreMeasureForNonJoiningDimension">mondrian.olap.agg.IgnoreMeasureForNonJoiningDimension</a></code></td>      <td>boolean</td>      <td>false</td>      <td>         If there are unrelated dimensions to a measure in context during         aggregation, the measure is ignored in the evaluation context. This         behaviour kicks in only if the         <code><a href="schema.html#Virtual_cubes">CubeUsage</a></code> for this         measure has         <code><a href="schema.html#Virtual_cubes">IgnoreUnrelatedDimensions</a></code>         attribute set to false         <p>For example, Gender doesn't join with [Warehouse Sales] measure.         <p>With <code>mondrian.olap.agg.IgnoreMeasureForNonJoiningDimension=true</code>         <p>Warehouse Sales gets eliminated and is ignored in the aggregate value         <blockquote><code>SUM({Product.members * Gender.members})</code></blockquote>         <blockquote><code>[Store Sales] + [Warehouse Sales] = 7,913,333.82</code></blockquote>         <p>With <code>mondrian.olap.agg.IgnoreMeasureForNonJoiningDimension=false</code>         <p>Warehouse Sales is part of the aggregate value.         <blockquote><code>SUM({Product.members * Gender.members})</code></blockquote>         <blockquote><code>[Store Sales] + [Warehouse Sales] = 9,290,730.03</code></blockquote>         <p>On a report where Gender M, F and All members exist a user will see a         large aggregated value compared to the aggregated value that can be         arrived at by suming up values against Gender M and F. This can be         confusing to the user. This feature can be used to eliminate such a         situation.      </td>    </tr>    <tr>      <td>        <code>        <a href="api/mondrian/olap/MondrianProperties.html#SolveOrderMode">mondrian.rolap.SolveOrderMode</a></code></td>      <td>string</td>      <td>absolute</td>      <td>        <p>Controls solve_order evaluation behavior.</p>        <p>Valid values are:        <ul>        <li><b>absolute</b> - The SOLVE_ORDER value is absolute regardless of         where it is defined; e.g. a query defined calculated member with a SOLVE_ORDER         of 1 always takes precedence over a cube defined value of 2.</li>        <li><b>scoped</b> - Cube calculated members are resolved before any session scope         calculated members, and session scope members are resolved before any query         defined calculation.  The SOLVE_ORDER value only applies within the scope in         which it was defined.</li>        </ul></p>        <p>The default behavior (scoped) is compatible with Microsoft SQL Server        Analysis Services 2005 and later. Use {@code absolute} to be compatible        with Analysis Services 2000 and Mondrian 3.0 and earlier.</p>      </td>    </tr>    <tr>      <td colspan="4">      <b><br>      Testing</b>      </td>  </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TestName">      mondrian.test.Name</a></code></td>      <td>string</td>      <td>null</td>      <td>Property which determines which tests are run. This is a      <a href="http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html">      Java regular expression</a>. If this property is specified, only tests      whose names match the pattern in its entirety will be run.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TestClass">      mondrian.test.Class</a></code></td>      <td>string</td>      <td>-</td>      <td>Property which determines which test class to run. This is the name of      the class which either implements interface&nbsp; <code>      <a href="http://junit.sourceforge.net/javadoc/junit/framework/Test.html">      junit.framework.Test</a></code> or has a method <code>public static      junit.framework.Test suite()</code>.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TestConnectString">      mondrian.test.connectString</a></code></td>      <td>string</td>      <td>-</td>      <td>Property containing the connect string which regresssion tests should      use to connect to the database.<p>See the <a href="#Connect_strings">      connect string specification</a> for more details.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#QueryFilePattern">      mondrian.test.QueryFilePattern</a></code></td>      <td>string</td>      <td>-</td>      <td>(not documented)</td>    </tr>    <tr>      <td><code>      <a href="api/mondrian/olap/MondrianProperties.html#QueryFileDirectory">      mondrian.test.QueryFileDirectory</a></code></td>      <td>string</td>      <td>-</td>      <td>(not documented)</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#Iterations">      mondrian.test.Iterations</a></code></td>      <td>int</td>      <td>1</td>      <td>(not documented)</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#VUsers">      mondrian.test.VUsers</a></code></td>      <td>int</td>      <td>1</td>      <td>(not documented)</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TimeLimit">      mondrian.test.TimeLimit</a></code></td>      <td>int</td>      <td>0</td>      <td>The time limit for the test run in seconds. If the test is running      after that time, it is terminated.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#Warmup">      mondrian.test.Warmup</a></code></td>      <td>boolean</td>      <td>false</td>      <td>Whether this is a &quot;warmup test&quot;.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#CatalogURL">      mondrian.catalogURL</a></code></td>      <td>string</td>      <td>-</td>      <td>The URL of the catalog to be used by      <a href="api/mondrian/tui/CmdRunner.html">CmdRunner</a> and XML/A Test.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TestExpDependencies">      mondrian.test.ExpDependencies</a></code></td>      <td>int</td>      <td>0</td>      <td>Whether to test operators' dependencies, and how much time to spend      doing it.<br>      <br>      If this property is positive, Mondrian's test framework allocates an      expression evaluator which evaluates each expression several times, and      makes sure that the results of the expression are independent of      dimensions which the expression claims to be independent of.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TestSeed">      mondrian.test.random.seed</a></code></td>      <td>int</td>      <td>1234</td>      <td>Seed for random number generator used by some of the tests.<p>Any      value besides 0 or -1 gives deterministic behavior. The default value is      1234: most users should use this. Setting the seed to a different value      can increase coverage, and therefore may uncover new bugs.</p>      <p>If you set the value to 0, the system will generate its own      pseudo-random seed.</p>      <p>If you set the value to -1, Mondrian uses the next seed from an      internal random-number generator. This is a little more deterministic than      setting the value to 0.</p>      </td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TestJdbcURL">      mondrian.test.jdbcURL</a></code></td>      <td>string</td>      <td>-</td>      <td>Property containing the JDBC URL of a test database. There is no      default value.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TestJdbcUser">      mondrian.test.jdbcUser</a></code></td>      <td>string</td>      <td>-</td>      <td>Property containing the JDBC user of a test database. The default      value is null, to cope with DBMSs that don't need this.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TestJdbcPassword">      mondrian.test.jdbcPassword</a></code></td>      <td>string</td>      <td>-</td>      <td>Property containing the JDBC password of a test database. The default      value is null, to cope with DBMSs that don't need this.</td>    </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#TestWarnIfNoPatternForDialect">      mondrian.test.WarnIfNoPatternForDialect</a></code></td>      <td>string</td>      <td>NONE</td>      <td>      Property which controls if warning messages should be printed if a sql       comparison tests do not contain expected sqls for the specified dialect.       The tests are skipped if no expected sqls are found for the current dialect.      <p>Possible values are the following:      <ul>      <li>"NONE": no warning (default) </li>      <li>"ANY": any dialect</li>      <li>"ACCESS"</li>      <li>"DERBY"</li>      <li>"LUCIDDB"</li>      <li>"MYSQL"</li>      <li>... and any Dialect enum in SqlPattern.Dialect</li>      </ul>            <p>Specific tests can overwrite the default setting. The priority      between test setting and property file setting is:</p>            <blockquote>      Settings besides "NONE" in mondrian.properties file < Any setting in the test < "ANY"      </blockquote>      </td>    </tr>    <tr>      <td colspan="4">      <b><br>      Aggregate tables</b>      </td>  </tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#UseAggregates">      mondrian.rolap.aggregates.Use</a></code></td>      <td>boolean</td>      <td>false</td>      <td>Whether to use aggregate tables.<p>If      true, then Mondrian uses aggregate tables. This property is queried prior to each      aggregate query so that changing the value of this property dynamically      (not just at startup) is meaningful.</p>      <p>Aggregates can be read from the      database using the <code>mondrian.rolap. aggregates.Read</code> property      but will not be used unless this property is set to true.</p></td>    </tr><tr>    <td><code><a            href="api/mondrian/olap/MondrianProperties.html#OptimizePredicates">        mondrian.rolap.aggregates.optimizePredicates</a></code></td>    <td>boolean</td>    <td>true</td>    <td>Determines whether Mondrian optimizes predicates or not        <p>If set to true, Mondrian intelligently optimizes certain predicates.</p>        <p>If set to false, then predicates are optimized only when all the            members of a dimension are included.</p>        <p>Example:</p>        <p>For the in MDX query which selects all but one member of 1997 quarter:</p>        <p>            <code>select {[Time].[1997].[Q1],[Time].[1997].[Q2],[Time].[1997].[Q3]} on 0 from sales</code>            predicate optimization would result in sql that retrives all 4 quarters, instead of just 3.            The fourth quarter is cached along with others for future use:</p>        <p><code>...where`time_by_day`.`the_year` = 1997 group by            `time_by_day`.`the_year`, `time_by_day`.`quarter`...</code></p>        <p>(note the <code>where in</code> clause involving quarters is missing)</p>        <p>when predicate optimization is disabled, Mondrian would retrive no more data than specified by the query,            In the above case it would retrive only data for first 3 quarters:</p>        <p><code>...`time_by_day`.`the_year` = 1997 and `time_by_day`.`quarter` in ('Q1', 'Q2', 'Q3') group by `time_by_day`.`the_year`, `time_by_day`.`quarter`...</code></p>    </td></tr>    <tr>      <td><code><a href="api/mondrian/olap/MondrianProperties.html#ReadAggregates">      mondrian.rolap.aggregates.Read</a></code></td>      <td>boolean</td>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -