Tuesday, March 24, 2009

BusinessObjects Enterprise Architecture



BusinessObjects Enterprise web services

The web services are server-side components that process request from client applications and communicate these requests to the appropriate server. They include support for report viewing, and logic to understand and direct web requests to the appropriate BusinessObjects Enterprise server.

BusinessObjects Enterprise web services include:

Web Application Server

The Web Application Server uses the BusinessObjects Enterprise SDK (Java or .NET) to interface with the rest of the BusinessObjects Enterprise services. It is responsible for processing requests from the browser, sending Crystal Server Pages (.CSP) and Crystal Web Request (.CWR) requests to the Web Component Adapter, and formatting pages to be returned to the web client. The Web Application Server acts as a gateway between the browser and the rest of the components in BusinessObjects Enterprise.

Web Component Adapter (WCA)

The WCA runs within the application server and provides backward compatibility for applications developed using Crystal Server Pages (.CSP) and Crystal Web Request (.CWR) requests. The WCA also handles OLAP Intelligence view requests.

The management services

The management services manage the BusinessObjects Enterprise system.These services maintain all security information, send requests to the appropriate services, manage auditing information, and store report instances.

The management services are:

Central Management Server (CMS)

The CMS is responsible for authenticating users and groups, and keeping track of the availability of the other BusinessObjects Enterprise services. It also maintains the BusinessObjects Enterprise system database, which includes information about users, groups, security levels, BusinessObjects Enterprise content, and services. The CMS also maintains a separate audit database of information about user actions and manages the BusinessObjects Repository. All servers communicate with the CMS when they start up.

Event Server

The Event Server manages file-based events. It monitors the directory you specified when setting up a file-based event. When the appropriate file appears in the monitored directory, the Event Server triggers your file based event.

Destination Job Server

A user can take an existing report instance and schedule the report under a specified format and destination. The Destination Job Server copies or creates a shortcut of the file and sends it to the selected destination.

BusinessObjects Enterprise storage services:
The storage services are responsible for storing objects and object instances.

The storage services are:

Input File Repository Server

The Input File Repository Server manages all of the report and program objects that have been published to the system. It can store the following files: .RPT, .CAR, .EXE, .BAT, .JS, .XLS, .DOC, .PPT, .RTF, .TXT, .PDF,.WID. Note that .RPT files are stored as report definition files only; they do not contain any data.

Output File Repository Server

The Output File Repository Server manages all of the report instances generated by the Report Job Server and the program instances generated by the Program Job Server. It also manages instances generated by the Web Intelligence Report Server and the LOV Job Server. It can store the following files: .RPT, .CSV, .XLS, .DOC, .RTF, .TXT, .PDF, .WID.. Note that .RPT and .WID files are stored as reports/documents with saved data.

Crystal Reports Cache Server

The Crystal Reports Cache Server handles viewing requests from the Web Application Server when the Crystal Reports viewer preference is set to ActiveX, Java or DHTML viewers.
The Cache Server maintains a folder of cached report EPF files, determines if a request can be fulfilled with a cached report page or pass the request to the Crystal Reports Page Server when no cached report page exists. The benefit of caching is that BusinessObjects Enterprise doesn’t have to generate .epf files each time a page is viewed. Therefore report pages that have been cached can be shared among users.

Desktop Intelligence Cache Server

The Desktop Intelligence Cache Server handles viewing requests for Desktop Intelligence documents and manages the viewable pages created by Desktop Intelligence Report Server.

BusinessObjects Enterprise processing services

The processing services access the data and generate reports. This is the only tier that interacts directly with the databases that contain report data.

Which services become involved in processing an object is determined by whether the object is being scheduled or viewed on demand. Viewer choice also plays a role in determining which servers are involved in object processing.

For scheduling requests

The schedule processing services are:

Program Job Server

The Program Job Server processes program objects, as requested by the CMS, and generates program instances.

Crystal Reports Job Server

The Crystal Reports Job Server processes report objects, as requested by the CMS, and generates report instances.

Destination Job Server

If you configure a job server to process report objects, or send objects to instances to specified destinations, it becomes a Destination Job Server. A Destination Job Server processes requests that it receives from the CMS and sends the requested objects or instances to the specified destination.

If the request is for an object, the Destination Job Server retrieves the object from the Input File Repository Server. If a report or program instance is requested, the Destination Job Server retrieves the instance from the Output File Repository Server.

Web Intelligence Job Server

The Web Intelligence Job Server receives schedule requests from the CMS and then forwards them to the Web Intelligence Report Server for processing.

Web Intelligence Report Server

The Web Intelligence Report Server processes Web Intelligence report requests.

Both the Program Job Server and the Crystal Reports Job Server retrieve the file to be run from the Input File Repository Server. Run the report or program, and then save the processed file to the Output File Repository Server as an instance.

List of Values (LOV) Job Server

The List of Values Job Server receives schedule requests from the Business View manager and processes scheduled List of Values objects to populate them with values that are retrieved from a database.

Desktop Intelligence Job Server

The Desktop Intelligence Job Server processes scheduling requests it receives from the CMS for Desktop Intelligence documents and generates the instance of the Desktop Intelligence document.

Desktop Intelligence Report Server

The Desktop Intelligence Report Server processes viewing requests for Desktop Intelligence documents and generates the viewable pages of the Desktop Intelligence document.

Connection Server

The Connection Server in XI R2 is a service that can be administered and configured through CCM (Central Configuration Manager) and the CMC (Central Management Console). The Connection Server is responsible for the database connectivity to access data. It is invoked when users want to edit and view Desktop Intelligence documents through InfoView in 3-tier mode. It is also used by some EPM services.

The Connection Server libraries are present on the Web Intelligence Report Server, Desktop Intelligence Report Server and Web Intelligence Job Server which allows these services to query the database directly without communicating with the Connection Server service.

For viewing requests

The viewing processing services are:

Crystal Reports Page Server

The Crystal Reports Page Server is responsible for responding to page requests by processing reports and generating Encapsulated Page Format (.EPF) pages.The Crystal Reports Page Server retrieves data for the report from the latest instance or directly from that database. After it has generated the report and converted it to .EPF, the Crystal Reports Page Server then sends the .EPF file to the Crystal Reports Cache Server.

Web Intelligence Report Server

The Web Intelligence Report Server is responsible for generating viewable pages. The Web Intelligence Report Server obtains page creation requests from the Web Application Server and then communicates with the Input File Repository Server in order to obtain copy of the .WID file and the universe definition.

Report Application Server

The Report Application Server (RAS) processes reports that users view with the Advanced DHTML viewer. The RAS also provides the ad hoc reporting capabilities that allow users to create and modify reports over the Web.

The RAS is very similar to the Crystal Reports Page Server: it too is primarily responsible for responding to page requests by processing reports and generating EPF pages. However, the RAS uses an internal caching mechanism that involves no interaction with the Crystal Reports Cache Server.

As with the Crystal Reports Page Server, the RAS supports COM, ASP.NET, and Java viewer SDKs. The Report Application Server also includes an SDK for report creation and modification, providing you with tools for building custom report interaction interfaces.