Responsiveness is highly dependent on the type and mix of report and visualization workloads. They can run according to schedule, on-demand or created in an ad hoc fashion. Each type of workload has unique performance implications. Interactive users also demand instant response times even when large data sets are continually processed in the background. JReport Server has been optimized extensively for common and extreme workload requirements.
- In-memory cubes are created by caching pre-computed aggregation functions called measures. Reports and visualizations use the cube data to improve performance.
- JReport provides multiple levels of resource caching to avoid repetitive access of the same data from the data source. Objects that can be cached and refreshed automatically include catalogs, templates, images, report data, security configurations, and more.
Bursting is useful in handling both large amounts of data as well as a large number of users. JReport can distribute any report result to multiple recipients with each receiving a subset, subject to security rules. Bursting reports can be distributed to any destination, including email, FTP, and JReport’s versioning system, among others. Multiple criteria and rules can act simultaneously to perform multiple distributions from a single report run.
- JReport can automatically “push down” aggregation functions to the data source at runtime in order to minimize unnecessary data transfers and improve overall performance.
- By assigning a higher priority to an active task you can avoid a critical or on-demand task from being blocked by batch or large tasks.
- Partial Data View lets you set data retrieval limits, a feature especially useful when interactively accessing a large data source. Adjusting or removal of the limit is a single-click action.
Enterprises across industries require embedded solutions that can scale with their application workload demands. Applications will have different types of scaling requirements depending on their usage characteristics.
- Scaling requirements may include the number of concurrent users, reports or tasks. They may also include the mix of on-demand and scheduled tasks, as well as their size and complexity.
- Each node in a JReport Server Cluster plays an identical role enabling the cluster to elastically scale by adding or removing nodes at any time. The cluster can be deployed rapidly and scaled linearly to meet the performance objectives set forth by organizations of all sizes.
- JReport Server Cluster is also designed to provide enterprises with dynamic load balancing to ensure that all cluster nodes are utilized efficiently by automatically rebalancing a heterogeneous workload when nodes are added or removed.