It is very common to use mixed
workload databases to run reports and ad hoc queries in addition to OLTP
transactions. There are number of customers using XML Publisher /Crystal
reports etc to run fixed reports and ad hoc queries against OLTP database, some
of them are run as concurrent processes. This is to support online reporting
needs which are not fulfilled by typical Enterprise DW solutions because of
latency introduced by heavy ETL processes.
The first oblivious choice to
improve performance of ad hoc/report queries is to create dozens of indexes on
OLTP tables which would add transaction overheads. It adds time consuming
tuning and administration over head for identifying and creating analytical
indexes. In short adding analytical indexes to support ad hoc analysis would
affect online transaction processing and also requires additional index
storages.
ODS is another option by which a data
copy is been taken from OLTP systems into analytic systems using complex
replication/ETL processes, most of replication process are expensive and adds
latency too. Frequent execution of Micro ETL /replication processes to get near
to real time reports might affect online transaction processing performance
during working hours.
Oracle recently announced Oracle
12C in memory database option to address these pain points. There are number of
questions.
Is option provided by Oracle 12c in-
memory database would provide ability to easily performing real-time data
analysis together with real-time transaction processing on all existing applications?
Is it an enabler to transform organization into Real-Time Enterprises which
quickly make data-driven decisions, respond instantly to customer demands, and
continuously optimize all key processes?
This blog is an attempt to list
features of the Oracle 12C in – memory database and share it with wider audience.
Dual Format
Architecture
Column format is optimal for
analytics while row format is optimal for OLTP. Oracle Database In-Memory uses
both formats simultaneously to allow real-time analytics on both Data
Warehouses and OLTP databases. Indexes previously required for analytics can be
dropped, accelerating mixed-workload OLTP.
Columnar In
Memory Technology
Oracle Database In-Memory
transparently extends Oracle Database 12c with columnar in-memory technology.
Users get immediate answers to business questions that previously took hours
because highly optimized in-memory column formats and SIMD vector processing
enable analytics to run at a rate of billions of rows per second per CPU core.
Scale Up
Oracle’s scale-up technologies
enable application transparent In-Memory scale-up on SMP computers with up to
tens of terabytes of memory and thousands of CPU threads. Data is analyzed at
the enormous rate of hundreds of billions of rows per second with outstanding
efficiency and no feature limitations.
Scale Out
Oracle’s scale-out technologies
enable application transparent In-Memory scale-out across large clusters of
computers with 100s of terabytes of memory and thousands of CPU threads. Data
is analyzed at the enormous rate of trillions of rows per second with no
feature limitations.
HA and
Security
Oracle’s Availability and
Security technologies all work transparently with Oracle Database In-Memory
ensuring extreme safety for mission critical applications. On Oracle Engineered
Systems, In-Memory fault tolerance duplicates in-memory data across nodes
enabling queries to instantly use an in-memory copy of data if a node fails.
Cost
Oracle Database In Memory does
not mandate that all data must fit in memory. Frequently accessed data can be
kept In-Memory while less active data is kept on much lower cost flash and
disk.
Ease in
Deployment
Deploying Oracle Database
In-Memory with any existing Oracle Database-compatible application is as easy
as flipping a switch, no application changes are required. All of Oracle’s
extensive features, data types, and APIs continue to work transparently.
Summary
The ability to easily perform
real-time data analysis together with real-time transaction processing on all
existing applications enables organizations to transform into Real-Time
Enterprises that quickly make data-driven decisions, respond instantly to
customer demands, and continuously optimize all key processes.
I am looking forward two major
streams of development for Oracle Applications and Oracle ETL/ELT operations which would offer a great deal of benefits ..
Each of Oracle's Applications -
including Oracle Fusion Applications, Oracle JD Edwards Enterprise-One, Oracle
PeopleSoft, Oracle Siebel, Oracle E-Business Suite, and Oracle Hyperion—is
developing new In-Memory Applications that leverage Oracle Engineered Systems
and Oracle Database In-Memory to transform critical but slow business processes
into real- time processes
Each of Oracle’s BI Application
Adopters – is rewriting code to leverage In- Memory fast data access without
affecting OLTP performance. So I can re-run by ETL process as many times I want
for intraday analytical reporting.
I hope you find this information useful.