Scalable Embedded Analytics with Pyramid
The article discusses Pyramid's scalable embedded analytics solution designed to address the challenges of integrating complex, resource-intensive web-based analytic applications securely and efficiently within host business applications, overcoming issues related to performance, interactivity, rendering, and authorization typically encountered when embedding analytics via traditional IFRAME methods.
To make business analytics more accessible and relevant, organizations have been striving to put analytics in the context of their business applications and workflows rather than treating it as a separate set of tools and functions running in its own sandbox.
The process of embedding analytics is now a top-tier demand, and it comes with its own set of problems and complexities. Pyramid’s embedded analytics (separately licensed) is strongly designed to meet those challenges—making scalable, high-end third-party analytic solutions a reality.
Challenges
There are two core challenges with embedding analytics:
- 1.The first relates to the process and technology that allows a complex application to run inside another host application. This extends to how the content renders, interactivity, and performance.
- 2.The second relates to securing the analytic content—which is usually a window on top of prized data that often needs to be authorized in some manner.
The Technology
Almost all embedded scenarios are through web content. Many analytic applications expose some version of their capabilities through a browser-based client. To embed the analytics, organizations must find a way to embed the analytic website in the hosting application. While this works in theory and has been an acceptable solution in practice, this exercise usually involves loading the web client into an IFRAME on the host page.
While the result should be a “light and fluffy” page, most web-based analytic clients are heavy: loading big data models into the browser, creating complex visualization objects, and producing interactive options for the end user. To prevent the entire application from hanging or crashing the browser, most deployments have only one or two such IFRAMES per host page or panel. This is typical because each IFRAME instantiates its own separate client and duplicates the structural and memory footprint for each embedded item.
To further complicate matters, the IFRAME model—a dinosaur of older HTML standards—is on life support with the emergence of HTML5 and modern web-app design (with frameworks like Angular and React).
To avoid these issues, some analytic applications render pictures and images. But it comes at the cost of low or no interactivity, not to mention issues with responsive design and low-quality visualizations.
Security and Authorization
The next challenge involves data security.
Most analytic scenarios involve looking at important data. And if it’s important, the access needs to be secured and authorized. Most solutions involve a process of securing the embedded content. However, it becomes a challenge if the content is hosted in a different domain to the analytic platform or in scenarios where the technologies use entirely separate authorization techniques.
With good technical development and time, most security headaches can be solved. It would just be so much nicer if it were easier.
Embedded Analytics with Pyramid
Pyramid was designed from the beginning to solve the challenges of embedding.
- The solution includes a fully functional web client designed using modern HTML5 standards—keeping it light, nimble, and easy to integrate. This means content can be exposed through any HTML container tag that can house the HTML directives (like “DIV”). Pyramid content can live on the page itself rather than in separate, sandboxed IFRAME containers. It’s fully compliant with all the modern HTML5 frameworks and solutions in the market today.
- The client engine is instantiated once on a page—regardless of how many separate embedded items are shown. This has a dramatic impact on performance because it means the solution can scale and the browser will not crash.
- Pyramid’s security REST APIs allow developers to easily create any type of security interface and authorization process between their host application and Pyramid, using practically any development language or host technology, including all the necessary plumbing to solve cross-domain problems.
- The main Pyramid client interface includes simple tools for grabbing content and embed “code snippets” that can be dropped into a host page to make the process of building and deploying embedded analytical content fast and easy.
- Pyramid includes a set of specific JavaScript API functions for embedded content that will facilitate the deployment of an application with dynamically embedded content. When coupled with the broader administrative and operational REST APIs, it’s possible for organizations to build their own custom analytic viewer on top of Pyramid.
Other Resources
To get a better sense of how this all comes together, check out these links:
- 1.See embedded content in action on our website here.
- 2.Watch a demo movie on how to embed with Pyramid.
- 3.Setup a demo with Pyramid Analytics.