In today’s SaaS-dominated enterprise software world, product teams relentlessly innovate and engineer to stay ahead of the pack in their respective application categories. If your app is all about taking care of patients in the hospital, for example, not only do you have talented developers coding the most responsive user interfaces, but you’re also constantly making sure you have the right expertise navigating trends in hospital operations, insurance payments, and government regulations.
At the same time, the demand for more and better analytics around core application data is rising faster than ever before. In fact, more buyers are increasing the priority placed on analytics when choosing SaaS applications for functions such as HR, sales, and marketing. In short, product teams are increasing priority on the reporting and analytics solution within their SaaS application.
These dynamics put product development teams in a conundrum of sorts. Do you stick to your knitting by focusing on core features or dilute efforts to address a growing number of high priority requests for report and dashboard enhancements? Before making these strategic resource allocation decisions, it’s important to consider factors that contribute to the success of analytics solutions embedded within SaaS applications.
Below, we explore two of these analytics success factors, scale and performance, and highlight key features within each area that are most valued by SaaS vendors.
Analytics that Scale Efficiently
Scalable SaaS applications require analytics that also scale. A scalable reporting and analytics solution is responsible for data access, aggregation, and visualization from millions of rows of data across multiple data sources for potentially thousands of concurrent users. A scalable reporting and analytics solution should perform without failure or degraded performance and shouldn’t require incremental people or compute resources with each incremental customer.
Clustering, load balancing, and results caching are critical performance-enhancing features for delivering a responsive analytics experience, especially in large user communities. Analytics with clustering technologies can provide seemingly unlimited computing capacity through virtual machines to handle spikes in demand.
Along with clustering, load-balancing technologies can help you maximize compute resource by automatically allocating analytic operations to the most suitable instances based on current loads. When it comes to frequently accessed data and analytics, results caching allows for the fastest results.
In the past, some development teams might have built and supported a secure infrastructure with the exact amount of computation, storage, and network capabilities for existing and future users. However, this is a fading reality and many SaaS vendors are turning to cloud providers like Amazon Web Services or Microsoft Azure to achieve on-demand scalability to support user growth.
Since painting charts and dashboards for trend analysis often accounts for some of the most compute-intensive processes, reporting and analytics functionality needs to take advantage of scalable infrastructure just as much, if not more than the core application itself.
Analytics that Are Always Available
As enterprises increasingly embrace a data-driven culture, users are demanding continuous availability for the BI & analytics embedded within their applications. Tolerance for downtimes associated with batch updates and data synchronization processes is shrinking fast amongst operational business units. More importantly, many companies have begun to embed analytics into commercial products and services used 24 hours a day by external customers.
The ability to cluster multiple nodes of an analytics solution for performance can also solve the high availability challenge: keeping the analytics in your application running and available at all times. Distributing your analytics computing resources across multiple servers, at the same or different locations, helps prevent failures from disrupting user workflows. Scheduled tasks such as daily report distribution processes can also be spread out over different nodes allowing a subset of machines to take over analytics tasks should any other nodes fail.
Orchestrating high availability analytics across multiples nodes or clusters requires the right monitoring and control software. Monitoring software automatically executes programmed recovery instructions as situations dictate and provides local and remote users with the status of servers, performance statistics, and alerts for potential issues.
Powering Growth of Your Cloud SaaS Applications
Scalability in your analytics capabilities equates to scalability of your core SaaS application. While many development teams have done an outstanding job keeping up with ad hoc report requests through heroic efforts, the new year represents a good time to revisit what’s in your analytics solution.
Consider the following: does your solution provide the functionality and user experience your customers seek? Without working double shifts or continuously adding servers, will performance and availability levels scale to achieve your subscription growth targets?
By embedding third-party software for reporting and analytics, SaaS vendors can quickly enhance the competitiveness of their applications while maintaining focus on their core application domain competencies.
(About the author: Leo Zhao has been a senior business intelligence consultant at Jinfonet for over 10 years. Prior to working at Jinfonet, Zhao was involved with the systems integration and business intelligence industry for almost a decade. He can be reached at firstname.lastname@example.org)