Whats New in Oracle TimesTen In-Memory Database 11g and Oracle In-Memory Database Cache 11g...
-
Upload
haley-power -
Category
Documents
-
view
242 -
download
2
Transcript of Whats New in Oracle TimesTen In-Memory Database 11g and Oracle In-Memory Database Cache 11g...
What’s New inOracle TimesTen In-Memory Database 11g andOracle In-Memory Database Cache 11g
Marie-Anne NeimatVice President, Development
The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle.
Real-Time Data ManagementEnabling the Real-Time World
Real-Time Systems and Applications(BAM, CRM, Fraud Detection, RT billing, Personalization,
Portals, Telco Services, Financial Services)
Uninterrupted Service• High availability across all
components
Speed of Deployment• Ease of implementation• Ease of administration• Integration in data management
stack
Controlled expenses• Leverage inexpensive middle-tier
hardware• More transactions per IT dollars• Incremental scalability
Instant Responsiveness• Even during peak periods• Competitive advantage• Ensures customer satisfaction• Reduces operations cost
Agenda
• Quick Overview– Oracle TimesTen In-Memory Database and– Oracle In-Memory Database Cache
• What’s new in 11g• Customer use cases
Agenda
• Quick Overview– Oracle TimesTen In-Memory Database and– Oracle In-Memory Database Cache
• What’s new in 11g• Customer use cases
Oracle TimesTen In-Memory DatabaseMemory-Optimized Standalone Database
• Persistent, memory-optimized relational database
• Delivers extreme performance for real-time applications
• Highly available
• Deployed in the middle tier, close to the application
• Operates as a standalone database
• Or …
Application Application Application
Telco ServicesFinancial Services
CRM, Portal, SaaS,
Customer-facing Applications
Intelligence, Defense, Real-TimeBAM & BI
In-Memory Database CacheIn-Memory Database Cache
Real Application ClusterReal Application Cluster
Automatic Storage ManagementAutomatic Storage Management
Oracle In-Memory Database CacheLow-Cost Extreme Performance in the Middle-tier
• Accelerates Oracle Database applications
• Utilizes middle-tier resources
• Data cached in Oracle TimesTen In-Memory Database
– Database tables
– Subsets of rows and columns
• Fast, consistent response times
– High transaction throughput
• Standard SQL interface– Synchronized with Oracle Database
Cached tables
BusinessApplications
Cached tables
BusinessApplications
Lightning Fast Response Time
0
4
8
12
16
Mic
rose
con
ds
Read a Record Update Transaction
Average Response TimeTimesTen In-Memory Database
Oracle TimesTen In-Memory Database 11g Intel Xeon 3.0 Ghz 64-bit Oracle Enterprise Linux
14Millionths of
a second
4Millionths of
a second
Linear Throughput ScalingScale Up on Multi-Processor / Multi-Core Hardware
0
200,000
400,000
600,000
800,000
1,000,000
1,200,000
1,400,000
Rea
ds
per
Sec
on
d
1 2 4 6 8
Number of Processes
Read Throughput
Oracle TimesTen In-Memory Database 11g AMD64 Dual-Core 1.8GHz, 4 Processors, 16GB RAM; OEL 4.0
Linear Throughput ScalingScale Up on Multi-Processor / Multi-Core Hardware
0
30,000
60,000
90,000
120,000
150,000
180,000
210,000
Up
dat
es p
er S
eco
nd
1 2 4 6 8
Number of Processes
Update Throughput
Oracle TimesTen In-Memory Database 11g AMD64 Dual-Core 1.8GHz, 4 Processors, 16GB RAM; OEL 4.0
8th process competes with log flusher for CPU resource
Out of CPUresources
Oracle TimesTen In-Memory DatabaseOptimized In-Memory Database Technology
• In-memory RDBMS– Entire database in memory– Persistent database– Optimized memory layout and
algorithms
• Exceptional performance– Instantaneous response time– High throughput– Embeddable
• Persistent and durable– Transactions with ACID properties– Flexible options for data
persistence to disk
• Standard SQL and PL/SQL with– JDBC, ODBC, OCI, Pro*C– Data types compatible with Oracle
Database
Directly-Linked Application
TimesTen Libraries
Client-Server Application
TimesTen Client Lib
Memory-Resident Database
Client/Server
JDBC / ODBC / OCI / Pro*c
Checkpoint Files
Log Files
Fast data access
Transactional ReplicationHigh Availability and Instantaneous Failover
• Real-time transactional replication • High performance
– Asynchronous replication– Synchronous replication
• Multiple topologies, including– Active Standby Pair– Active Active
• Robust and reliable – Supports both LAN and WAN
configuration– Data compression
• Support online upgrade – No downtime, cross version
replication
Read-Only Subscribers
TimesTenIMDBTimesTen
IMDBTimesTenIMDB
Subscriber
TimesTenIMDB
Active
TimesTenIMDB
Standby
ApplicationTransactions
ApplicationReads on Hot
Standby
ApplicationReads
Active Standby Pair Topology
Active Active Topology
TimesTenIMDB
Active
TimesTenIMDB
Active
ApplicationTransactions
ApplicationTransactions
SplitWorkload
Oracle In-Memory Database CacheAccelerator for Oracle Database Applications
• Reduced response time and increased throughput for Oracle Database applications
• Oracle Database tables cached in the application-tier– Groups of related tables– All or subset of rows and columns
• Read-only and updatable caches– Cached tables accessed like
regular SQL database tables– Joins/search, insert/update/delete
• Automatic data synchronization– TimesTen to Oracle– Oracle to TimesTen
Directly-Linked Application
TimesTen Libraries
Client-Server Application
TimesTen Client Lib
Client/Server
JDBC / ODBC / OCI / Pro*CCheckpoint
Files
Log Files
Mid-Tier Server
AutomaticSynchronization
Read-Only Cached Tables
• Content of cached tables pre-loaded or dynamically loaded– Dynamic loading coupled
with automatic aging• Automatic transactional
synchronization• Frequency of refreshes
controlled by application
Example: Call Center App• Agent profiles pre-loaded in
all grid members• Updates to agent profiles
applied to Oracle Database
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
Updates
Reads
Reads
Reads
Automatic Synchronization
GridMember
Updatable Cached Tables
• Content of cached tables pre-loaded or dynamically loaded– Dynamic loading coupled
with automatic aging• Automatic transactional
synchronization– Synchronous– Asynchronous
Example: Call Center App• Customer profiles loaded
dynamically when needed• Customer profiles updated in
IMDB Cache & propagated automatically to Oracle DB
• Customer profiles aged out automatically when not used
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
Updates
Updates
Updates
Automatic Synchronization
Mixed Caches
• Read-only cached tables and updatable cached tables in the same In-Memory Database Cache
• Cached tables may be pre-loaded or dynamically loaded– Dynamic loading coupled
with automatic aging• Automatic transactional
synchronization
Example: Call Center App• Read-only, pre-loaded agent
profiles co-exist with updatable, dynamically loaded customer profiles
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
Automatic Synchronization
Updates
Highly Available CachesHighly-Available Cross-Tier Data Management Stack
• Active/Standby pair replication
• Synchronous or asynchronous
• Available with read-only and updatable cached tables
• Resilient to failure of any component– IMDB Cache active– IMDB Cache standby– RAC instance– Oracle Database cluster
Replication
In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application
In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application
Data Guard
ActiveStandby
In-MemoryDatabase
CacheIn-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Read-OnlySubscribers
Agenda
• Quick Overview– Oracle TimesTen In-Memory Database and– Oracle In-Memory Database Cache
• What’s new in 11g• Customer use cases
Oracle TimesTen and IMDB Cache What’s New in 11g Release
• Globally shared caches– Incremental scalability on low cost hardware
• PL/SQL, OCI, Pro*C support– Minimal application changes
• Automated cross-tier high availability – Zero downtime
Coupled with extreme performance
•Reduce the cost of adoption and the cost of operation
Incremental Scalability
Globally Shared CachesHorizontal Scaling on Low-Cost Hardware
• Location transparency – Content of all cache
nodes available at each node
• On-demand loading of cached data and redistribution based on usage
• Transactional consistency• Peer-to-peer
communication• Automatic
synchronization with Oracle Database
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
Automatic Synchronization
Updates
New
Horizontal Scaling with In-Memory Database CacheScale Out on Low Cost Hardware
0
20,000
40,000
60,000
80,000
100,000
120,000
Up
dat
es P
er S
eco
nd
1 2 4 8 16 32 64
Number of Cache Grid Members
Sun 5240 Servers – 2 Sockets, 8 cores/socket, 8 hdwr threads/core
Online Addition/Removal of Cache NodesIncremental Scalability
• On-demand addition/ removal of cache nodes to match– Memory
capacity needs– Computation
capacity needs
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
New
MinimalApplication Changes
Application Development
SQL
PL/SQL
LanguagesC/C++
ODBC
ttClasses
OCI, Pro*C
J2EE App Servers OR Mapping
New in 11g releaseNew in 11g release• Oracle Call Interface (OCI) and Pro*C SupportOracle Call Interface (OCI) and Pro*C Support• PL/SQL – ability to invoke PL/SQL code from all supported APIsPL/SQL – ability to invoke PL/SQL code from all supported APIs
IMDB CACHEIMDB CACHE
Minimal Application ChangesPL/SQL, OCI, and Pro*C in TimesTen Database
• PL/SQL support– PL/SQL engine implemented inside TimesTen database– Same Oracle PL/SQL language– Subset of packages
• OCI Support– Identical API signatures as used for the Oracle Database– Subset of functions
• Pro*C/C++ support– Built using the same Oracle Pro*C/C++ precompiler
• Minimal application changes– Extremely fast response time and high throughput
New
Order Matching Application
• Three different types of transactions:– Place market order– Place limit order– Process quote
• Business logic implemented in PL/SQL stored procedures
• Application written in Java• Execute 1000 times in one
thread– Place an order– Process a quote
Presentation
TradingApplication
TradingApplication
In-MemoryDatabase
Cache
PL/SQLExecuted onOracle DB
PL/SQLExecuted inIMDB Cache
Accelerate Order Matching ApplicationLower Response Time and Higher Throughput
Zero Downtime
Integration with Oracle ClusterwareAutomated Management, Monitoring and Failover
Oracle Clusterware• Manages TimesTen / IMDB
Cache processes• Monitors and detects failure of– Nodes– TimesTen / IMDB Cache
processes– Applications
• Manages automatic failover and assignment of new roles
• Recovers automatically, including provisioning of spare nodes
In-MemoryDatabase
CacheIn-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Read-Only Subscribers
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
Active Standby
SharedStorage
Spare Nodes
New
Integration with Oracle Data GuardOracle Maximum Availability Architecture
• Support Data Guard synchronous standby– Failover and
switchover
– Rolling upgrades
Primary DB Physical / LogicalStandby DB
Data Guard
In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application
In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application
Integration with Oracle Data GuardOracle Maximum Availability Architecture
• Switchover / failover to standby Data Guard
– Zero downtime
– No data loss
Primary DB Physical / LogicalStandby DB
New
In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application
In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application
Automatic Client Connection Failover
• Available for Client / Server connections
• Configurable by the application In-Memory
DatabaseCache
Active
In-MemoryDatabase
Cache
Standby
IMDB CacheClient Library
Application
Automatic Client Connection Failover
• Connection failover is automatic upon TimesTen/IMDB Cache server failover to the Standby server– Automatic re-connect to the
new Active server– Connection handle is
preserved
• Applications may subscribe to connection failover notification (like TAF)
In-MemoryDatabase
Cache
Active
In-MemoryDatabase
Cache
Active
IMDB CacheClient Library
Application
New
Tools
SQL Developer and Enterprise Manager Plug-InSame Tools for the Oracle Stack
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
In-MemoryDatabase
Cache
Application
Oracle Enterprise Manager
SQL Developer
CustomerUse Cases
Proven in Real-Time DeploymentsDeployed by Thousands of Companies
Smart Metering OperationsIMDB Cache Reduces Hardware Expenses
• Complete meter, data & xact management at national level
• Half-hourly data collection from every meter (47M)
• Daily feedback• Requirement: Process– 463 msg/sec at supplier level– 2167 msg/sec at national level
Oracle DBOracle DB +IMDB Cache
200 Msgs / sec 1,555 Msgs / sec
3 Servers at supplier lvl
1 Server at supplier lvl
12 Servers at national lvl
2 Servers at national lvl
In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application
In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application In-MemoryDatabase
CacheIn-MemoryDatabase
Cache
Application
Msgqueue
Smart meters
Server: HP Proliant server with 4 dual core AMD Opteron CPUs and 16GB of RAM
Airline Ticket Fare Search and Reservation SystemTimesTen and IMDB Cache Accelerate Least Fare Searches
• No 3 Airline co in the world• New fare system for domestic
flights• Provide customers ability to– Query fares (80 SQL stmts/xact)– Request least fare (600 SQL
stmts/xact)
• Guarantee low response time and high throughput
• Solution– Oracle TimesTen– Oracle IMDB Cache– Oracle Database RAC
In-MemoryDatabase
Cache
Application
Flight SchedulesSeat Assignments
TimesTenIn-MemoryDatabase
Application
TimesTenIn-MemoryDatabase
Application
TimesTenIn-MemoryDatabase
Application
TimesTenIn-MemoryDatabase
Application
Monthly FareUpdate
FareQueries
Least FareSearch
New VOIP Application Server
Database Requirements• Data access latency < 10ms• Ease of administration• Geo-redundancy• High Availability
Solution• IMDB Cache for real time queries,
local and central administration• Data Guard for Geo-Redundancy• RAC for high availability
Results• Exceeds Site latency requirement• Site query time ~2.2 ms• WAN to RAC query time ~150 ms
Reduce Call Connection Time Performance + Site Availability + Geo Redundancy
Primary connections to IMDB CacheBackup connections to IMDB CacheOracle Data Guard
EAST
RAC
WEST
RAC
Site Requirements• Fast data access • High Availability
Solution• Application connects to
local data source for fast response time
• Active and Standby for HA • 2 read-only subscribers for
additional data capacity and site redundancy
Site Availability Low Latency + Local Redundancy
IMDBCache
Active
IMDBCache
Standby
IMDBCache
Subscriber
IMDBCache
Subscriber
App
Site Configuration
For More Information
Oracle TimesTen Product Center on OTN:
http://oracle.com/technology/products/timesten
• Technology white papers• Quick Start Guide and Tutorials• Discussion Forum• And more …
Other TimesTen and IMDB Cache Sessions
Title Date/Time Venue/Room
What’s New in Oracle TimesTen In-Memory Database and Oracle In-Memory Database Cache 11g
Wed 11:45 Moscone SouthRoom 306
Using Oracle TimesTen In-Memory Database to Deploy Low-Latency Applications in Remote Sites - Comcast
Wed 13:45 Moscone SouthRoom 102
High Speed and High Availability with Oracle In-Memory Database Cache 11g
Wed 17:00 Moscone South
Room 307
Visit us at the DemoGround! Moscone West, booths W-033 and W-036
AQ&