Académique Documents
Professionnel Documents
Culture Documents
Business Intelligence
An Oracle Technical White Paper
October 2000
INTRODUCTION
Page 2
capabilities; the scope of this paper, however, does not include Oracle
OLAP Server, Oracle Data Mining (for data mining), or Oracle
Warehouse Builder (for ETL and warehouse management). Instead, this
paper discusses the relational features which serve as a foundation for
these areas.
This paper will initially discuss Oracle9is enhancements for core datawarehousing requirements, and then will discuss the enhancements
which support Oracle9i as a data warehouse platform.
ENHANCEMENTS TO CORE CAPABILITIES
Page 3
Performance
Bitmap Join Index
This join index could be used to evaluate the following query. In this
example query, the Customer table will not even be accessed; the join is
implicit in the access of the join index.
SELECT SUM(Sales.dollar_amount)
FROM Sales, Customer
WHERE Sales.cust_id = Customer.cust_id
AND Customer.state = California;
Enhancements to Materialized Views
Page 4
WITH Clause
Oracle9i also supports the WITH clause. This new SQL construct can
improve the performance of complex SQL queries. In particular, queries
which utilize the same subquery in multiple places will benefit in
performance from the WITH clause.
Adaptive Direct IO Operations
Page 5
Scalability
List Partitioning
The primary benefits of partitioning are often best realized when the
partitioning strategy closely corresponds to the underlying business
processes. List partitioning meets this objective. A data warehouse
administrator might choose to use the above partitioning scheme if the
data is often accessed or modified according to region or country. Since
Page 6
Page 7
Page 8
The execution plans of all current queries, along with other runtime
statistics, are now stored in Oracles internal cursor cache. This will
allow DBAs to view and/or capture the execution plans of queries which
are currently executing in the database. This feature will be used not
only by DBAs but will also be used by management tools in order to
gather better explain plan information.
Summary Advisor and Materialized View Manageability
Page 9
managing data, its own availability and recovery strategies, and its own
parallelism and scalability infrastructure. Not surprisingly, many products
lacked robustness in one or more areas. Moreover, these products
were not integrated, so that a complete data warehouse required the
resources to implement and manage multiple server products.
OLAP
Page 10
Page 11
Grouping sets
The SQL above calculates aggregates over exactly 3 groupings (year, region, product), (year, product), and (region,
product).
Concatenated grouping sets
Page 12
Oracle9i also permits the use of composite columns within GROUPBY expressions. A composite column is a collection of columns,
specified within parentheses, that is treated as a single unit during the
computation of groupings. For example, by enclosing a subset of the
columns in a ROLLUP list within parenthesis, some levels will be skipped
during ROLLUP. Here is a simple case where (quarter, month) is a
composite column:
GROUP BY ROLLUP (year, (quarter, month), day)
Oracle9i offers the capability to capture changed data from Oracle data
sources. Data capture can be either synchronous (via Oracles
Replication framework) or asynchronously (by processing the archived
redo logs with Oracles LogMiner technology). The asynchronous
change data capture does not impact the source system in any way,
since archived logs can be processed offline. Change Data Capture
provides the capability not only for capturing change data but for
Page 13
The external table feature allows external data, such as flat files, to be
exposed within the database just like a regular database table. External
tables can be accessed via SQL, so that external files can be queried
directly and in parallel using the full power of SQL, PL/SQL, and Java.
External tables will commonly be used in the ETL process to combine
data-transformations (via SQL) with data-loading into a single step.
External tables are a very powerful feature with many possible
applications in ETL as well as other database environments in which
flat-files are processed.
Upserts
Page 14
Page 15
Page 16