1
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Cómo Construimos Oracle TimesTen
2
Ricardo Gonzalez
Senior Product Manager
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Agenda
•
•
•
•
3
Oracle
Oracle MDC
TimesTen In-Memory Database
Q&A
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
<Insert Picture Here>
4
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Oracle in a Nutshell
•
•
•
•
5
35 años
R $35.6 billones
NI $8.5 billones
+100k colaboradores
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
•
•
•
•
RDBMS
TimesTen
MySQL
SUN
6
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Why Guadalajara, Mexico ?
7
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Oracle México Development Center
8
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
How is Oracle different
Product vs. Project Development
9
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Projects @ Oracle MDC
• Automatic
Storage
Management
• Gateways
• XAP
• Golden Gate
• Enterprise Manager
• Clusterware*
• OLAP
• Porting
• Oracle Applications
Lab
• Oracle Cloud File
System
• Quality of Service
• Database
Sustaining
10
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Semantics
• Spatial
• TimesTen
• Virtual Operating
System
• Real Application
Clustering
• Documentation
• Curriculum
Development
TimesTen In-Memory Database
11
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
The Quest for Response Time
Why is Response Time Important?
• Failure to meet service level agreements (SLA)
– Due to long response time
• Customer churns
– Competitive products offer better response time
• Decreased user productivity and decreased customer
satisfaction
– Unhappy customers
• Loss of revenue and decreased profitability
– Effect of lost business and opportunities
12
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Improving Application Response Time
Understanding Latency Requirements
L
A
T
Slower
E
N
C
Y
Faster
• Define business requirements for latency
• Evaluate solutions
13
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
TimesTen In-Memory Database
Over a Decade of Innovation
2010
2009
2007
2005
LOBs
2011
Cache Advisor
In-Memory Analytics
Columnar Compression
Parallel Replication
ODP.NET Support
Cache Grid for Scale Out
Oracle Clusterware Integration
PL/SQL Support
Oracle Call Interface Support
OEM & SQLDeveloper Integration
Oracle Database Data Types Support
2000
National Language Support
Integration with Oracle RAC
1998
Mid-tier Cache for Oracle DB
Online Upgrades
High Availability
1st Commercial In-Memory RDBMS
14
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Enabling The Real-Time World
Authorization,
Online Charging,
Location-Based
Services
Market Data,
Market Events,
Order Matching,
Trading
Real-Time Analytics Interactive Dashboard
Data Mart, Scorecard
eCommerce,
Personalization,
Real-Time Ad
Serving
Real-Time Applications
Instantly Responsive / Highly Scalable / Always-On
Mainstream 64-bit
Processors
Fast
Networks
Key Enabling Technology
15
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Large Capacity
RAM
What is Oracle TimesTen In-Memory Database
Memory Optimized Relational Database
Client-Server
Application
• Extremely fast
TimesTen
Client Lib
Client/
Server
– Entire database in memory
– Microsecond response time
Direct-Linked
Application
TimesTen Libraries
• Compatible with Oracle Database
JDBC / ODBC / ADO.NET / OCI / PLSQL
Fast
data
access
– Standard SQL and PL/SQL, Datatypes
– JDBC, ODBC, ODP.NET, OCI, Pro*C
Checkpoint
Files
Transaction
Log Files
Memory-Resident
Database
16
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Persistent and Recoverable
– Transactional logging and checkpointing
• Easy to use and deploy
Lightning Fast Response Time
Average Response Time
TimesTen In-Memory Database
Microseconds
8
7
Millionths of
a second
4
1.78
0
Millionths of
a second
Read Transaction
Update Transaction
One Exalogic
Compute Node
Oracle TimesTen In-Memory Database 11.2.2.0 - Intel Xeon 5670 2.93Ghz, 2 CPUs, 6 cores/CPU - Oracle Linux 5.6
17
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Why is TimesTen In-Memory Database so fast?
Client-Server
Application
• In-Memory Optimizations
TimesTen
Client Lib
Client/
Server
– Database in shared memory
– Memory optimized access methods
– Faster than fully-cached disk-based
databases
Direct-Linked
Application
TimesTen Libraries
JDBC / ODBC / ADO.NET / OCI / PLSQL
Fast
data
access
Checkpoint
Files
Transaction
Log Files
Memory-Resident
Database
18
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Direct-link for best performance
– Shared memory mapped into
application process
– Eliminates networking overhead
What If .. you have an existing Oracle Database?
How to enable your application to use in-memory
technology?
Use TimesTen as an In-Memory Database Cache
 Oracle In-Memory Database Cache
 A product option for Oracle Database Enterprise Edition
19
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Oracle In-Memory Database Cache
Telco Services
Financial Services
eCommerce,
Personalization
Real-Time Analytics –
Dashboard, Scorecard
Data Mart
Application
Application
Application
IMDB Cache Grid
• Application-tier In-memory
RDBMS
• Accelerates applications
• Uses standard SQL and PL/SQL
• Caches Oracle Database tables
• Read-write caching
• Dynamic and static
• Automatic synchronization
• Scales up and scales out
• Built-in high availability
20
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
In-Memory Database Cache
Flexible Cache Group Configurations
Application
Transactions
Cache Groups
Automatic Data
Synchronization
• Cache Group describes the data in the Oracle
database to cache
• Collection of related tables
– All or subset of rows and columns
– Defined via SQL clause
CREATE CACHE GROUP name
FROM
owner.tab1 (col1, col2),
owner.tab2 (col1, col4)
…
WHERE <predicate>
• Cache tables are regular database tables in
TimesTen
– Joins/search, insert/update/delete
21
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
In-Memory Database Caching
Data Synchronization
Read-Write caching
Reads/Write
transactions
Reads/Write
transactions
Application
Application
Automatic
Data
Synchronization
22
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Reads/Write
transactions
Application
• Transactions committed in TimesTen
cache
• Parallel write-through of committed
transactions to Oracle Database
Read-only caching
• Transactions committed in Oracle
Database
• Multi-stream refresh of committed
transactions to TimesTen
In-Memory Database Cache Grid
Incremental Scalability
Application
Application
Application
23
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Application
• Location transparency
• Usage-driven, adaptive
redistribution of cached data
• Online addition/removal of
cache nodes
• Scale out with growth
• Parallel searches
• Transactional consistency
Flexible Caching Options
• Read-Write and Read-only
• Pre-loading of cache
– Data set pre-determined
• On-demand loading of cache
– Data set not pre-determined or too large
• Performance driven
– Locality optimized for consistent response time
– Globally shared across all nodes for application transparency
– Scale-out horizontally with processing capacity
24
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
What does TimesTen offer for high availability?
TimesTen Replication provides real-time replication of
transaction data between TimesTen databases
25
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Real-Time Transactional Replication
High Availability and Disaster Recovery
• High performance
–
–
–
–
Synchronous / Asynchronous
Memory-to-memory replication
Parallel send of log streams
Parallel apply of changes on
Standby and Subscribers
• HA and DR support
• Online upgrades – no downtime
26
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Application
Transactions
Application Reads
on Hot Standby
Active
Standby
Read-Only Subscribers
- Reader Farm
- Disaster Recovery
Subscriber
Subscriber
Subscriber
Application Programming Interfaces
And Tools
27
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Application Development
SQL
PL/SQL
Languages
28
ADO.NET
ODBC
OCI, Pro*C
ttClasses
C/C++/C#
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Java/JDBC
J2EE App Servers
OR Mapping
Minimal Application Changes
• PL/SQL support
– PL/SQL engine implemented inside TimesTen database
– Same Oracle PL/SQL language; subset of packages
• C/C++ support
– Standard ODBC interface
• Java support
– Standard JDBC interface
• Oracle APIs: ODP.NET, OCI, Pro*C/C++
– Support identical API signatures as used for the Oracle Database; subset of functions
• Minimal application changes
29
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
TIMESTEN TEAM @ ORACLE MDC
30
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
TT Team
• Quality Assurance
• 3 Software
Developers
• 3 System &
Release Testing
Engineers
• Management
• 1 Senior
Development
Manager
31
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• Database Engine
• 2 Software
Developers
• Replication, Cache,
EM Plugin
• 4 Software
Developers
• Documentation
• 1 Technical Writer
• Product
Management
• 1 Product Manager
Building Products
THE ORACLE WAY
32
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Lo que resaltan nuestros ingenieros del MDC
• Ambiente
• No hay
Micromanagement
• Equipo
multidisciplinario,
internacional y
talentoso
• Libertad para pensar
y ser creativo
• Proyectos Long
Term
33
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
• El trabajo de cada
uno afecta empresas
y personas a nivel
global
• Jefe y Equipo tanto
local como
internacional
• Más allá de horarios,
lo importante son los
objetivos
• Great Place to Work
Mexico
• Retador
• Motivación
constante
• Facilities / Location
34
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
35
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
36
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
37
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
38
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
For More Information
http://www.oracle.com/technetwork/database/timesten
• Technology white papers
• Quick Start Guide and tutorials
• Discussion Forum
• And more..
Ricardo Gonzalez
Senior Product Manager
ricardo.a.gonzalez@oracle.com
39
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
Q&A
40
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
41
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.
42
Copyright © 2012, Oracle and/or its affiliates. All rights reserved.