Skip to main content

What's new in 5.11

5.11

New features

  • Data Export Service: The data export service allows you to download the result of MDX queries to a stream or directly export them to files in the server or in the cloud. Three formats are available: Arrow, csvTabular and csvPivotTable. The exports can be customized. The basic export order will define a mdx query to run with its context values and an output configuration to specify the format of the output and for an export the file configuration.

  • Application Performance Monitoring (APM): ActivePivot APM is a solution for monitoring the healthiness and performance of ActivePivot instances. It provides several features easing the support work, and reducing the burden of maintaining and troubleshooting ActivePivot. The APM library provides the following main features:

    • Distributed log tracing: Allows to easily identify all the logs related to an operation ( e.g. query execution) across nodes
    • Query monitoring: Monitor in-progress, successful or failed MDX queries, their associated execution logs, and the historical performances
    • Cube size and usage monitoring: Display the trend of cube aggregates provider sizes over time.
    • Datastore monitoring: Display the trend of datastore sizes over time; Monitor the datastore transaction times; View successful and failed CSV loading, and their associated execution logs.
    • Netty monitoring: Monitor the size of data transferred between nodes, in terms of single query execution, all queries executed by a user, or all activities, etc.
    • Monitoring activities by user: Monitor activities (e.g. query execution) on a user level.
    • JVM monitoring: Overall JVM status, including CPU, heap and off-heap memory, threads, GC, etc.
  • Expose remote data cube physical addresses in distribution: The query cube now provides a method exposing the physical addresses of the remote servers hosting data cubes. This is done by providing endpoint information using the properties: ActiveViamProperty#DATA_CUBE_REST_ENDPOINT_PORT_PROPERTY and ActiveViamProperty#DATA_CUBE_REST_ENDPOINT_SUFFIX_PROPERTY. These properties can be used alone or cooperatively.

  • MdxQueryBouncer: The MdxQueryBouncer allows to limit the number of concurrently running MDX queries. Query bouncing can be configured using the following properties:

    • ActiveViamProperty#MDX_CONCURRENT_QUERY_LIMIT_PROPERTY : Specifies the maximum number of running MDX queries. Note that this will include mdx queries execution and update, and mdx stream registration and update.
    • ActiveViamProperty#MDX_CONCURRENT_QUERY_WAIT_LIMIT_PROPERTY : Specifies a timeout while waiting for a permit to execute an MDX query

    The above limits are also configurable dynamically using the MBean MdxQueryBouncer.

  • Source Parsing Report: ActivePivot data source API can now generate a parsing report detailing any error encountered during the parsing process. Now, the method ISource#fetch(...) returns a parsing reports provided that the property PARSING_REPORT_ENABLED is set to true and the underlying source support such reporting.

    Note that only the CSV Source and JDBC Source provide such reporting.

    For more details, see the documentation of the CSV source and of the JDBC source.

  • Excel Add-in: the Excel add-in is now part of the Activepivot core. This Excel extension allows users to:

    • see the Mdx query created by Excel
    • perform drillthroughs
    • move from slicers to slicers
    • modify context values.

    The installer of the Excel add-in can be found on Artifactory. The context service has been integrated to the ActivePivot code base as well (see Spreadsheet service documentation).

  • Virtual Hierarchies: This is an experimental feature available in 5.11.0 but still in development. A new hierarchy implementation to reduce the memory footprint and speedup the application. It can be used on high cardinality hierarchies in exchange for a reduced set of features. These hierarchies are inherently not able to access their members, which restricts the operations that can be performed on such hierarchies. These restrictions consist of:

    • Lead, Lag, PevMember and NextMember functions are not allowed on such hierarchies
    • Axis expressions including a virtual hierarchy must include the NON EMPTY key word. In addition, if the expression describes a member expression the full member path must be provided.
    • A Virtual hierarchy must not be slicing
    • Virtual hierarchy levels cannot be used as distributing fields Notice that although a query including a given hierarchy as virtual or not virtual will output the same results, internally the query execution may be slightly different.
  • Admin UI: This UI allows to browse the datastore.

Improvements

  • Performance improvement in Post Processors and Copper Measures: All abstract post processor classes have been rewritten. The new versions have the suffix V2. The goal of this rewriting is to prevent the boxing of primitive values into Objects, and reduce the memory footprint of queries. Both the initialization and the evaluation phases of the post-processors were redesigned, and more details can be found in the migration notes. This also lead to slight modifications of the Copper API.

  • Aliases on Datastore Queries: Fields of a Datastore query can now be aliased. The String representing the expression of the field can be replaced with a SelectionField containing the alias.