Oracle BI server
Encyclopedia

Component of OBIEE in detail

As it was written above the OBIEE consists of 8 interdependent components. Each of them is described in detail below:

Oracle BI Server is a high-impact query, reporting and analysis server that
provides services to the other components of the Business Intelligence Suite such as
Answers, Dashboards, Data Mining
Data mining
Data mining , a relatively young and interdisciplinary field of computer science is the process of discovering new patterns from large data sets involving methods at the intersection of artificial intelligence, machine learning, statistics and database systems...

, Reporting, and Analytic Applications.
The Oracle BI Server uses ODBC 2.0 //Open Database Connectivity providjes a
standard software API method for using database management systems// and
JDBC //Java Database Connectivity is an API for the Java programming
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...

 language
that defines how a client may access a database// interfaces to shows its services.
The services of the BI server have two primary functions. Firstly, they compile
incoming query requests into an executable code
Subroutine
In computer science, a subroutine is a portion of code within a larger program that performs a specific task and is relatively independent of the remaining code....

 and then execute the code.
Clients of the BI Server work with a logical data kunalt ji munshi/simplified logical SQL/
independent of the data sources, and they submit them to the BI server. The
server translates the data to some combination of physical SQL and sends them
to the back-end databases.
Server administration functions include facilities such as monitoring, statistics
logging, cancellation, session and query management, and others.
The administration of the server is managed internally with using standard
protocols e.g. AD //Active Directory is an implementation of LDAP services// or
LDAP//The Lightweight Directory Access Protocol
Lightweight Directory Access Protocol
The Lightweight Directory Access Protocol is an application protocol for accessing and maintaining distributed directory information services over an Internet Protocol network...

 is an application protocol
for querying and modifying directory service
Directory service
A directory service is the software system that stores, organizes and provides access to information in a directory. In software engineering, a directory is a map between names and values. It allows the lookup of values given a name, similar to a dictionary...

s running over TCP/IP//.

Query compilation has five phases:
  • parsing
  • logical request generation
  • navigation
  • rewrite
  • code generation

Parsing

The multi-functional parser accepts the full ANSI SQL92 syntax as its
input and its main function is to generate a parse tree//It is a tree data
structure that represents the syntactic structure
Syntax
In linguistics, syntax is the study of the principles and rules for constructing phrases and sentences in natural languages....

 of a string // as its
output.

Logical Request Generation

A component of the logical request generation
takes the parse tree
Parse tree
A concrete syntax tree or parse tree or parsing treeis an ordered, rooted tree that represents the syntactic structure of a string according to some formal grammar. In a parse tree, the interior nodes are labeled by non-terminals of the grammar, while the leaf nodes are labeled by terminals of the...

 and makes of it a logical request tree that describes
the precise semantics of the requested data in simplified SQL.

Navigation

The navigation is one of the major phases. The navigator processes
the logical request tree to an initial physical execution plan as its
output, and it uses a knowledge of content to eliminate the traditional
multi-database joins.

Rewrite/Optimizations

The rewrite is also a very important phase and its
output is also the execution plan.This phase is responsible for distributed
relational query
Relational database
A relational database is a database that conforms to relational model theory. The software used in a relational database is called a relational database management system . Colloquial use of the term "relational database" may refer to the RDBMS software, or the relational database itself...

optimization and suitable native SQL generation.
The phase of rewriting covers:
  • Multi-database join plan generation
  • Function shipping
  • Functional compensation analysis
  • Optimized SQL generation

Code Generation

A fed for the code generation phase is a native physical
execution plan as its input. Code generation produces
native query processing language directives to communicate with
heterogeneous or remote databases/i.e., physical SQL
generation/.It also produces a code for any remaining query processing
that has not been function shipped to remote databases.
Parallel execution directives are inserted in this code and it is used for
the Analytics execution engine.
The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK