Angular PivotGrid - Enhance Performance on Large Datasets

This help topic describes how to improve PivotGrid performance when binding and processing large data sets.

Enable Remote Operations

The DevExtreme PivotGrid performs all data operations, such as filtering and grouping, on the client side. To enhance component performance, enable PivotGridDataSource.remoteOperations to process data on the server side. PivotGrid remoteOperations support XmlaStore and CustomStore store types, along with CustomStore instances created with DevExtreme.AspNet.Data.createStore.

For more information about the createStore method, refer to the following topic: Web API, PHP and MongoDB Data Sources

For more information about integrating a Web API service with PivotGrid, refer to the following demo:

View Demo

Enable Virtual Scrolling

Enable virtual scrolling to render cells as users scroll them into view. Set scrolling.mode to "virtual".

Enable Pagination

When binding the component to an OLAP Cube with an XmlaStore, you can enable pagination to load data in portions. To do this, enable PivotGridDataSource.paginate.

Disable the Expand All Button

The "Expand All" button can request a lot of data from your data source at once. This can strain server resources and cause other performance issues with your application if you are using a remote data store. Disable allowExpandAll if you are using large remote datasets to avoid issues with data loading.

Enable State Storing

stateStoring can improve component usability when working with large datasets. Users can save their view settings after interacting with PivotGrid to continue working with the component at a later date. You can also implement the customSave and customLoad functions to set up multiple save states.