Managing aggregates
A Birst application may involve a large amount of data that can affect query performance.
Pre-aggregated data speeds up run-time query performance in two ways:
- An aggregate can be created at a higher level than base data, thus allowing calculations to span fewer rows when running. This reduction in run-time row count is called compression. Generally a compression of at least 10 to 1 creates a meaningful increase in performance.
- An aggregate can pre-join two large tables, allowing run-time queries to avoid expensive joins. In general, this is only useful for large table to large table joins (e.g., large fact to large dimension).
Aggregates have these drawbacks:
- Longer load times: The aggregates need to be calculated after every load of data. Load times can be mitigated using incremental refreshes of aggregates.
- Storage: Aggregates take space and can bloat a database.
Aggregates can be layered. For example, if there is a fact table with 250 million records, you can create an aggregate that has 25 million records and another that has 200,000. Birst automatically uses the highest level aggregate available.
To create an Aggregate:
To modify or delete an aggregate, select the aggregate and click either the
or .Caution:
Aggregates that were imported as part
of a package are displayed greyed out and italicized on the Manage
Aggregates page. Although they can be used in the space, they cannot be
modified.