Quantcast
Channel: Pentaho Community Forums
Viewing all articles
Browse latest Browse all 16689

How to Integrate or Embed Pentaho Business Intelligence into your application

$
0
0
The Pentaho BA Server is highly extensible, embeddable, and scriptable business intelligence web application. Internally, it is composed of content-generating engines that provide reporting, online analytical processing (OLAP), and data integration (ETL) functionality. These engines are managed by the Pentaho BI Platform process-flow engine, which as designed for but not exclusive to running such business intelligence tasks as: retrieving data from multiple disparate data sources, creating data-driven reports, and other content, scheduling, and conditionally automating content delivery.


End users interact with these services through an ad-hoc reporting interface, a choice of OLAP visualization tools (Pentaho Analyzer or JPivot), a dashboard designer, and a convenient scheduling interface.


The BI Platform is a process-flow engine that forms the operational core of the BA Server. It ties the other content engines — Reporting, Analysis, and Data Integration — to the Pentaho User Console to provide content display, delivery, and scheduling functionality. Additionally, the BI Platform offers a powerful scripting framework for conditionally automating tasks. Typically, the BI Platform is used to automate business intelligence tasks that rely on other engines, but it could theoretically be used for practically any logical task.


Embedding refers to adding individual pieces of Pentaho BA Server into your application on a code level without having to run a separate BA Server instance.


Integrating refers to running a fully operational Pentaho BA Server instance in order to access its content and use its functionality. This scenario accomplishes mosts or all of the goals of embedding BA Server.


Embedding is what most Pentaho users think that they should do. However, the interconnected nature of the BA Server prevents this from being a quick and easy process. Embedding is a highly complex operation that requires skilled programmers and lots of developer support resources from Pentaho's services and engineering teams. Integrating accomplishes most or all of the goals of embedding without the development overhead. For example, instead of embedding Interactive Reporting into your application, you can simply display it in an iframe. Page 22 through page 28 of Integrating Pentaho Software and Content provides example for running Pentaho Analyzer, Interactive Reporting, Adhoc Reporting in an iframe, and seems to provide hooks / callbacks so that Pentaho can invoke your logic when certain event occur such as when the user save a report. All of the Interactive Reporting functionality that you get through the Pentaho User Console will be available to you when you integrate in this manner.


The BI Platform is a lightweight process-flow engine that defines the order of execution of one or more components of the Pentaho BI Platform. It does not generate content itself, so it has to rely on separate engines for creating reports and other content.


Pentaho relies on the Spring Security pluggable authentication framework. By default, the BA Server uses a JDBC based data access object that is tied to a Hibernate database. Users and roles are configured through the Pentaho Enterprise Console, and content authorization is controlled by the BA Server administrator. However, you can easily configure the server to use existing security tables in a different database, or to authenticate through your existing LDAP server or Central Authentication Service. Pentaho's security is also extensible to the point that you can create your own data access object, or completely remove all authentication functionality.


The BA Server is programmable directly through Java code, or dynamically through XML files known as "action sequences". An action sequence contains a set of actions and parameters (input, output, and external resources) in an XML file with a .xaction extension. For this reason, action sequences are sometimes called xactions.


Action sequences activate BI Platform components and compel them to do work. They can be run anytime while the BA Server is active. You can also arrange for action sequences to be run at certain times, or intervals through the built-in scheduling service.


The simplest methods of integrating content generated from Pentaho BA Server are:


Direct services provided via servlets that deliver content in the URL outputstream
Web services provided via servlets that deliver content packaged as a SOAP response.
The Pentaho BA Server is capable of serving content using only a definition file. For example, a report created with Report Designer can be served from the BA Server directly from the .prpt definition file. This applies to Analyzer reports, Dashboard Designer views, and Pentaho Data Integration results as well. The BA Server is also capable of processing several steps — or actions — sequentially and returning the resulting output or content.

Source: wikidot

Viewing all articles
Browse latest Browse all 16689

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>