Overall components
There are many components that comprise Oracle BI 12c. Oracle BI 12c can categorize these components by the class of programming languages in which they were developed. This is mainly either Java or C++. In comparison to previous versions of Oracle BI, where it seemed to be a somewhat compact environment, Oracle BI 12c is much more integrated into the larger platform of Fusion Middleware, which adds both value and complexity. Some of the same legacy component names persist; however, it should not be taken lightly that most legacy components have been renamed, removed, or placed under new management processes.
The following figure provides a high-level overview of the main components that comprise the Oracle BI 11g architecture. The components are clearly segmented by the processes in which they are managed, each of which ultimately comprise the Oracle BI Domain:
Java components
In relation to Oracle BI 12c, the Java components are those which have been developed in the Java programming language. These components are similar to Oracle BI 11g, with a few differences. The main Java for Oracle BI 12c components, in no particular order of importance, are described in the following sections.
Action Service
Primarily used by the Action Framework, it executes actions on behalf of Presentation Services and Oracle BI Scheduler. Actions may be invocations of third-party web services, or invocations of user-supplied Java code executed as EJBs.
Visual Analyzer
New to Oracle BI 12c, this JEE deployment provides the Visual Analyzer (VA) analytical graphics system, which allows for data visualizations.
Administrative Components
Java Management Extensions Managed Beans (JMX MBeans) allow dynamic API functionality for managing, configuring, and administering Oracle BI 12c.
SOA Web Service
SOA Web Service provides a web service interface to the contents of the Oracle BI Presentation Catalog. The tree of objects in the Oracle BI Presentation Catalog is exposed as a tree of web services, defined by a WSIL tree with WSDL leaves. An organization could use these services for Business Process Execution Language (BPEL) integration.
Oracle BI Office
Oracle BI Office provides integration between Microsoft Office and Oracle BI 12c.
Oracle Real-Time Decisions (RTD)
Oracle Real-Time Decisions (RTD) provides a decision-making rules engine that enables real-time business intelligence predictions and outcome analysis.
Oracle BI Presentation Service plugin
Presentation Services runs as a deployed JEE process, not as a web server, and does not communicate using any web server plug-in API. The Oracle BI Presentation Services Plug-in forwards HTTP requests to Oracle BI Presentation Services System Component to handle requests from HTTP traffic, such as browser-based user interfaces or SOAP requests.
Oracle BI Publisher
The enterprise reporting solution for authoring and delivering highly formatted documents.
Security Services
Security Services provides standards-based authentication and population services. It enables Oracle BI Server to integrate with the Fusion Middleware security platform, which includes the Credential Store Framework and the Identity Store.
System Components
There are many components that comprise Oracle BI 12c. These mainly need to be all in a running state in order for Oracle BI 12c to be considered in running condition - the only exception being the Essbase component. The Oracle BI System Components are those which are developed in a non-Java programming language. Most have been developed in the C++ programming language, as mentioned previously. The following sections cover a list of those components.
BI Server
This is a C++ process that does the data access and aggregates data from data sources. You can configure multiple BI Server processes, which share the load. No session replication takes place between the BI Server processes. This is the core of OBIEE, and provides the services for accessing and managing the RPD.
The BI Server does not maintain user session state. For high-availability deployments, query results are cached in the global cache.
BI Presentation Server
This is a C++ process that generates the user interface pages and renders result sets on behalf of the Oracle BI Scheduler. You can configure multiple Presentation Services processes, which share the load. No session replication takes place between the Presentation Services processes.
Presentation Services is almost stateless. The only significant state is the client authentication. If Oracle Business Intelligence is configured to use single sign on for authentication purposes, then users do not have to re-authenticate after a failover. For all other authentication schemes, when failover occurs, clients will have to re-authenticate. The client sees an interruption of service and is redirected to a login page.
BI Scheduler
This is a C++ process that runs jobs according to a configurable frequency. Jobs may be agents created in the Oracle BI Presentation Catalog, or jobs created by the job manager. This scheduler differs from the Quartz scheduler that BI Publisher leverages. When scaled, only a maximum of two instances (one active, one passive) can be configured.
BI JavaHost
This is a Java process that includes resource-intensive graph and PDF rendering. It also allows BI Presentation Services to support BI Publisher and Java tasks within BI Scheduler. You can configure multiple JavaHost processes, which share the load. No session replication takes place between the JavaHost processes. The JavaHost is a stateless process. In Oracle BI 12c, JavaHost enables query access between Hyperion Financial Management (HFM) and Hyperion planning data sources integrated in the OBIEE RPD.
BI Server Cluster Controller
This is a C++ process that manages the population of BI Servers and Oracle BI Schedulers. It also distributes requests to the BI Server and ensures that requests are evenly load-balanced across scaled-out BI Servers in the domain. When scaled, only a maximum of two instances (one active, one passive) can be configured.
Essbase
This is the Essbase server, which provides Oracle/Hyperion Essbase capabilities for the Oracle BI implementation.
It is important to understand how all of the components interact within the Oracle BI environment. Understanding such general concepts as which port numbers are defined to communicate within the default Oracle BI architecture, or how the Oracle BI Administration Tool communicates with the Oracle BI repository, will be quite helpful in your journey to becoming an Oracle BI professional. The following figure shows each of the components comprising the core Oracle BI architecture, the communication ports, and the communication direction: