oracle in-memory database timesten - :: dbguide.net :: … ·  · 2008-04-25oracle in-memory...

41
<Insert Picture Here> Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) 김종현 팀장

Upload: vankhue

Post on 30-Apr-2018

234 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

<Insert Picture Here>

Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) 김종현

팀장

Page 2: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Agenda• In-Memory Database 개요

• Disk DB와 Oracle TimesTen 비교

• TimesTen 주요기능

• TimesTen 고 가용성 (Replication option)

• TimesTen 과 Oracle 연동 (Cache connect Option)

• 지원 플랫폼

Page 3: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

메모리 Database 수요 확대

• Real Time Enterprise , IT Convergence -IMS (IP based Multimedia Subsystem) : Telephony and IT services are merging

-SOA (Service Orient Architecture)

-BAM(Business Activity Monitoring)

-RFID/USN (Ubiquitous Sensor Network)

• Client 증가 , Rich Contents , Multi-Service• ROI 를 고려한 대용량

Transaction 처리

• 64bit computing 메모리 가격 하향 추세

Price of 1 Gigabyte of RAM Over Time*

$500$3,000

$40,000

$0

$10,000

$20,000

$30,000

$40,000

$50,000

1986 1996 2004

In-Memory Database 개요

Page 4: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

In-Memory Database 정의

•데이터베이스

전체를

메인

메모리에

상주시키고, 메모리

상에서

데이터베이스를

관리

해주는

DBMS로

초고속

실시간

트랜잭션

처리를

필요로

하는

모든

산업

분야에

적합

-높은

읽기

처리량이

필요한

분야

-고

가용성을

갖추고, 높은

쓰기

처리량이

필요한

분야

예: Prepaid wireless billing, equities trading

-빠른

응답

시간이

필요한

분야

예: softswitch, push-to-talk

-새로운

애플리케이션

또는

심각한

성능

문제를

안고

있는

기존

애플리케이션

-기존

데이터베이스를

유지하면서, “hot” 데이터에

대한

캐시

기능이

필요한

부분

In-Memory Database 개요

Page 5: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

In-Memory Database 핵심 조건

• 성능

확장성 (Scalability)

-

CPU 증설에

따른

성능

향상

보장

고 가용성 (High Availability)

-

장애

극복을

위한

이중화

(Active/Active , Active/Standby)

-

장애

노드의

복구

성능

(MTTR 최소화)

기존 Disk Database 와

연동

-

메모리

DB 와

기간

DB의

연동의

설정의

간편함

-

메모리

DB 와

기간

DB 의

방향

트랜잭션

반영

속도

In-Memory Database 개요

Page 6: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Position of TimesTen in 3-Tier ArchitectureDisk DB와 Oracle Timesten 비교

ApplicationsApplicationsApplications

1 Tier

2 Tier

3 Tier

TimesTen은 Application 단에

위치해서

Client에 가장

빠른

응답속도를

보장

최대

성능Instantly Responsive

Tightly Integrated

Highly Scalable

Page 7: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen VS Conventional RDBMSDisk DB와 Oracle Timesten 비교

Connection 부하 (IPC)어플리케이션

프로그램

DBMS 엔진

실시간데이터베이스

TimesTen

Disk-based

RDBMS메모리 복사 부하

데이터 주소 변환 부하

I/O 부하

추가 기능에

대한 부하

Oracle-TimesTenIn-Memory Database

Conventional RDBMS

버퍼 관리 부하

ODBC API

ODBC/Native API

Applications

• Embeddable: 20-30MB• Direct-Linked• Memory-Tuned Data Layout• Disks to Ensure Durability/Recovery

Applications

Page 8: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

성능비교 – Disk DB

혼합

트랜잭션

Page 9: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

성능비교 – TimesTen V.S. Oracle TimesTen

처리 성능 비교

: HP9000 rp8420(RISC) 4CPU/ 32G

RDBMSINSERT

UPDATE

SELECT

Oracle DBMS

UPDATE

SELECTV.S.

Performance

0

5000

10000

15000

20000

25000

30000

35000

40000

45000

Tim

esTen (

Direct)

Ora

cle

Tim

esTen

(Direct)

Ora

cle

Tim

esTen

(Direct)

Ora

cle

Insert ( 1200만건) select(180만건) update(180만건)

TPS

Total TPS

•Oracle 설정

1. Buffer Keep 기능을 이용Data를 SGA (메모리영역)에상주 후 성능 측정

2. Buffer Keep을 사용하지 않은

일반 운영환경에서는

Oracle 성능 절감

Page 10: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

성능비교 – TimesTen with Oracle

Oracle TT TT Oracle

50개

컬럼의

Table에

대해

200만건

Loading 시

180초TT 처리

20만건

update : 10초

Oracle DB 반영

시간

: 190초

Page 11: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

In-Memory Database TimesTen 개념

사용자 응용프로그램

JDBC – ODBC – SQL92

Transaction Log files

Checkpoint files

21

메모리영역

- DB startup시

모든 Table과 Data를 파일에서

메모리로 로딩

- 응용프로그램에서 필요한

Data를 Disk I/O없이 즉시

응답하여 Disk DB 성능 한계를

보완

- Disk Swap영역으로 paging이

되지 않게 할 수 있음

파일시스템

- 트랜잭션 안정성을

보장하기 위해 변경분을

파일에 저장

- 고성능 Logging

TimesTen 주요기능

Page 12: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

성능 – 대용량 DB 기동 시간

사용자 응용프로그램

JDBC – ODBC – SQL92

Transaction Log files

Checkpoint files

21

메모리영역

H/W 구성

SunFire6900 CPU : 2.4GHz 8core Memory : 32G

Storage Spec 모델 : ST6140 I/O 채널 : 4G Disk Cache : 4G

Data 량 Checkpoint File Size : 24G

실 데이터 사용량 : 14G 데이터 건수 : 3200만 건

TimesTen 7.0 기동 시간

2분 내외

파일시스템

Page 13: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

성능비교 – 확장성

Sun Solaris 9, 1.6 GHz Sparc, C with ODBC300,000 Reads

Per Second

100,000 WritesPer Second

1212--CPU IBM AIX POWER 1.2 GHzCPU IBM AIX POWER 1.2 GHz

Page 14: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen 제품 군

TimesTen 주요기능

TimesTen IMDB

Real-Time Database System Real-time data management for applications requiring exceptional performance

Typical Uses:Network Equipment & Systems

Value-Added Services

Reference Data

DataServer

Network

Cache option

Real-Time Dynamic Data Cache Real-time relational processing of selected data from an Oracle database, including automatic data loading and update synchronization

Typical Uses:Application Server Acceleration

Enterprise App Acceleration

Application-Tier Data Caching

Replication option

Real-Time Database System with Replication Real-time data management, and replication, for applications requiring exceptional performance, with the failover, recovery, and evolution of databases with minimal downtime

Typical Uses:Network Equipment & Systems

Value-Added Services

Reference Data

BDataServer

Primary Subscriber(s)

Network

DataServer

Cache

Network

Page 15: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen ArchitectureTimesTen 주요기능

DSN

C/S (TCP/IP,UNIX Domain Socket,IPC)

Direct Link (Shared Memory) protected by Micrologging™

Page 16: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen Architecture - DataStore

TimesTen shared libraries

Data Tables, Indexes,

System Tables Lock

s, C

urso

rs,

Com

pile

d C

omm

ands

, Te

mp

Inde

xes

Log Buffer

In-Memory Data Store

In-Memory Data Store

In-Memory Data Store

Application routinesTimesTen

shared libraries

Permanent Memory Region

Temp Memory Region

1. 단일 인스턴스에서 여러개의

DataStore 생성 / 운용 가능

2. 응용프로그램(utility 포함) 최초

접속 시 Database 자동 생성 가능.Embedded 시스템 활용 용이

3. 체크 포인트 파일 : Index 와

record를 모두 저장No index rebuilding in Startup

Page 17: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen 주요 특징

• 메모리에서 모든 데이터 관리

- MemoryLock -> OS paging out 방지

- 메모리 block 조각 모음 지원

• Hash Index , T-tree index (MMDB에 적합)

• 간편한 튜닝 Cost Base Optimizer

• Direct Linked , Client / Server 접속을 통한 다중

Threading

• 표준 Data Access API ( ODBC , JDBC, SQL 92)

• Transaction 안정성

- Log file 과 check point file 에 변경 기록

(메모리 휘발성 극복 , Recovery 가능)

- 트랜잭션 단위로 Buffer commit , Disk Commit 혼용 지원

• SNMP 지원

• X/Open , DTP (분산 트랜잭션 지원) -> TP 모니터(턱시도)지원

Direct Linked : Application과 DBMS 가 동일한 주소공간에서 실행, process 간의 overhead (Context Switch)를 최소화 하여 성능 극대화 , TimesTen 만 지원함.

Transaction Logs

TimesTen Libraries

Application

TimesTen Libraries

Application

Checkpoint files

Network

Client- Server

InIn--Memory DatabaseMemory Database

Direct-linked

TimesTen Libraries

ApplicationTimesTen Client lib

Application

Page 18: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

• Data aging 은 더 이상 필요하지 않은 데이터를 제거

• 과거의 데이터를 특정 시간을 기준으로 제거

• 일정 기간 동안 사용하지 않은 데이터를 제거

• Examples• 어제 날짜의 항공기 일정을 제거 (data older than 24 hours)• 시스템에서 특정 시간 동안 열람하지 않은 사용자의 프로필 정보를 삭제

• TimesTen 7.0 은 두 가지 자동 data aging 타입 지원

• Time-based aging – timestamp 값 기준

• Usage-based aging – LRU 알고리즘 기준

• 사용자가 aging 정책을 세울 수 있음

• TimesTen 테이블과 cache group에 적용

Support for Data Aging

Page 19: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Data Publishing - Transaction Log API (XLA)

First TransactionUpdate Record

TransactionCommit Record

XLA interfaceRead Update Records for a TransactionData Data

StoreStore

Committed Transactions

Applications

Updates

XLA Application

Generate SQL statements

Apply changes to

other databases

OtherApplicationsPublish events to

other applications

XLA Application

Transaction Log files

Log0

Log2Log 1

Transaction Log Memory Buffer

• 데이터 변경 사항을 실시간으로

모니터링하는 API를 제공

• 이기종의 외부 시스템과 연동

• 이를 이용하여 real-time event notification and processing 시스템을 구현함

• C & JAVA ( JMS )

• Table 과 Materialized view의 변경 사항

detect

• Bookmark 기능을 통해

reconnection/system shutdown 이후에도

변경 Log 적용의 연속성 지원

Page 20: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen 안정성• 단일 트랜잭션의 안정성

- Log file 과 check point file을 이용하여 메모리 상주의 휘발성 극복

- 한 응용 프로그램에서 Disk commit / Buffer commit 을 혼용사용 성능과 안정성 동시 만족

사용자 응용프로그램

JDBC – ODBC – SQL92

Transaction Log files

Checkpoint files

21

메모리영역

빠른 처리 -> 휘발성

파일시스템

Disk I/O 발생 -> 성능저하

Transaction Log Memory Buffer

.

.

.

Tx1 (Buffer Commit)

Tx2 (Disk Commit)

Tx3 (Buffer Commit)

Background Log flusher

Page 21: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen 안정성• 응용프로그램 HA(High Availability) 구성

- Replication 기능을 이용하여 Data 이중화 통한 고 가용성 구축

사용자 응용프로그램

양 방향 또는 단 방향

고속 복제(Replication)

TimesTen 복제(Replication)기능 특징

- 다양한 복제 구성

- Table 단위 또는 Database단위 복제

- 동기/비동기 복제 혼합 지원

- DDL 복제 지원

(컬럼 삭제 추가 등..)

- 온라인 Upgrade

- 간편한 복원

- Oracle DB 와 연계하여 확장성 및

가용성 보장.

Page 22: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Replication configurations

유연한

구성

active-standby

active-active

(업무

분산)

N-way, 1:1 , 1:N

3. ReplicationTimesTen 고 가용성

(Replication)

Page 23: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Replication configurations3. Replication

네트워크

Bandwidth 병목

중앙서버

지역1 지역2 지역3

Branch Office

LAN

WAN

Propagator

TimesTen 고 가용성

(Replication)

Page 24: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Asynchronous Replication•

커밋된

트랜잭션은

Subscriber에

비동기적

전달

매우

빠른

응답시간

제공

트랜잭션

처리량이

많고

대기

시간이

적은

어플리케이션에

적합

3. ReplicationTimesTen 고 가용성

(Replication)

Page 25: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Synchronous Replication – Return Receipt

Return Receipt

트랜잭션 데이터는 동기적 방식으로 응답신호(Ack)를 요구

커밋된 트랜잭션이 커밋을 수행한 어플리케이션에 응답하기 전에 반드시 Subscriber에

전달 되었음을 보장

3. ReplicationTimesTen 고 가용성

(Replication)

Page 26: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Synchronous Replication – Return 2-safe

• Return 2-safe트랜잭션 데이터는 동기적 방식으로 응답신호(Ack)를 요구

커밋된 트랜잭션이 커밋을 수행한 어플리케이션에 응답하기 전에 반드시 Subscriber에 전달

되고 Log file에 적용 됨을 보장

3. ReplicationTimesTen 고 가용성

(Replication)

Page 27: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Replication Definition3. Replication

create replication rep1element e1 table mytab

master masterds on server1subscriber subscriberds on server2

element e2 table mytabmaster subscriberds on server2subscriber masterds on server1;

create replication rep1

element e datastore

master masterds on server1

subscriber subscriberds on server2;

Application

server1 server2

Application

server1 server2

Replicate entire

database

Ex2) Active – Standby (Database 레벨)Active Standby

Ex1 ) Active – Active (Table 레벨)Active Active

Application

•Server 1 , Server 2 에 동일한 Replication 정의 문 사용

mytab mytab

Page 28: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

장애 발생시 무 중단 복구 예

하나의

Replication 정의문을

replication 대상이

되는

MMDB에

동일하게

적용함으로써

장애

MMDB1에서

MMDB2를

복사하여

장애

발생시

서비스

중단

없이

복원이

신속하여

MTTR (Mean Time To Repair) 최소화

Application

MMDB1 MMDB2

Application Application

MMDB1 MMDB2

Application서비스 절체

Application

MMDB1

Application서비스 가용

MMDB2

ttRepAdmin -duplicate -from MMDB1 -host Server2 MMDB2

Page 29: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

장애 복원 후 Data 자동 복구

TimesTen Node 1

TimesTen Node 2

TX 1

TX 2

TX 3

TX 1

TX 2

Failure on Node 1TX 4

TimesTen Node 1

TimesTen Node 2

TX 1TX 2

TX 3 trapped in Node 1

TX 1TX 2

TX 5

TX 4

TimesTen Node 1

TimesTen Node 2

TX 3 trapped in Node 1

TX 5

Node 1 recovered and up

TX 3

Master catch-up

Master Catch-up

Page 30: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Overview Cache connect to Oracle4. Cache Connect to Oracle

세계

최고의

Disk 형

DBMS인

Oracle Database 와

세계

최고의

In-Memory Database인

TimesTen을

투명하게

연동하여

별도의

개발

없이

DB간의

Data Consistency를

보장

제품간에

제품레벨의

cross certification 이

보증

되므로

시스템

구축

타사

DB간에

발생할

있는

certification 모호성이

최소화됨.

검증된

TimesTen의

뛰어난

성능과

Oracle Database의

대용량

데이터

처리의

장점을

모두

수용

Applications

Tightly Integrated

Applications ApplicationsInstantly Responsive

Highly Scalable

Page 31: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Strong point of Integration TimesTen & Oracle4. Cache Connect to Oracle

모든

DB Layer (Memory DB & Disk DB) 에 대한

무정지

시스템

구축가능

Node1

DB

Node2

TT TT

APP APP

RAC

Node1

DB

Node2

TT TT

APP APP

RAC

Automatic Failover

통합된

DB로써

업무

목적에

맞는

메모리

DB와

Disk DB의

효율적인

확장가능

(Scale-Out)-

Memory DB와

Disk DB를

분산하여 각

DB의

사용목적에

맞는 H/W capacity plan이

가능

DB

소형 H/W

Event Data 수집용

대형 H/W

배치 , 통계 , DW 용

기록data 유지

중.소형 H/W

대용량 트랜잭션(OLTP) 용

Node1

DB

Node2

TT TT

APP APP

RAC

모든

MMDB 장애

시에도

서비스

운영가능

Page 32: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Cache connect to Oracle4. Cache Connect to Oracle

오라클

테이블

전체

또는

부분

데이터를

Caching

Read-only or updateable

양방향

데이터

전송

From TimesTen to Oracle

From Oracle to TimesTen

Asynch or Synch write-through

하나의

오라클

DB에

다중

Data Store 가능

Replication option과 연동하여 사용 가능

Auto Aging , Load on Select

간단한

설정

, Oracle 반영

성능

보장

TimesTen 과 Oracle 연동

(Cache connect Option)

CREATE CACHE GROUP PremierUsers

FROM CUSTOMER (

NAME VARCHAR2(100) NOT NULL,

ADDR VARCHAR2(100) )

WHERE CUSTOMER.ORDER > 500;

Page 33: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Read-only Cache Groups

Read-only Cache Groups

변경은

허용되지

않음

Application은 TimesTen에 대한 단일 connection으로

오라클의

SQL을

처리할

있음

(Pass-through 기능)

오라클의

변경

데이터를

TimesTen에

자동으로

refresh

Incremental refresh (time intervals)

Full refresh

Optionally, Autorefresh OFF

Read Only

READONLY Cache Group

Cache

Auto-refresh updates from Oracle

Application

Pass-through SQL for non-cached tables or

updates

Oracle DBOracle DBOracle DB

4. Cache Connect to OracleTimesTen 과 Oracle 연동

(Cache connect Option)

Page 34: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Updatable Cache-Groups

• Synchronous WriteThrough (SWT)• 트랜잭션은 Cache Group과 오라클 데이터베이스에서

동시에 Commit됨

• 오라클과 Cache Group 에서 commit이 완료될 때까지

어플리케이션은 기다림

• Asynchronous WriteThrough (AWT)• 트랜잭션의 변경사항을 Oracle로 비동기적으로 전달

• 어플리케이션이 변경 사항의 commit 여부를 기다리지 않음.

Write Through

WRITETHROUGH Cache Group

Cache

Auto-propagate updates to

cached tables Load once on creation

Application

Pass-through SQL for non-cached tables

Oracle DBOracle DBOracle DB

4. Cache Connect to OracleTimesTen 과 Oracle 연동

(Cache connect Option)

Page 35: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

SQL PassThrough to Oracle

• Pass-Through는 어플리케이션이

TimesTen을 통해 오라클에 SQL을 전송

• 캐시된 테이블에서 사용할 수 없는 SQL을

정의하고 그 SQL을 오라클에 전송

• Cache가 오라클에 대한 연결을 관리

Oracle DBOracle DBOracle DB

Cache Group

TimesTen

PassThrough Logic

Statements that cannot

be handled in cache are

passed through to Oracle

Statements that can

be handled in cache

Application

4. Cache Connect to Oracle

Page 36: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Active Standby Pair Replication

Node 1 = ActiveNode 2 = StandbyNodes 3, 4, 5 optional

Oracle to TimesTenTimesTen to TimesTen Repl.Application Reads

TimesTen Node 1

TimesTen Node 2

Auto-Refresh

ReplicationTimesTen

Node 3

TimesTen Node 4

TimesTen Node 5

Oracle

ReadsTimesTen

Node 1TimesTen

Node 2

Auto-Refresh

TimesTen Node 3

TimesTen Node 4

TimesTen Node 5

Oracle

Reads

TimesTen Node 1

TimesTen Node 2

Auto-Refresh

ReplicationTimesTen

Node 3TimesTen

Node 4

TimesTen Node 5

Oracle

Reads

After Failure

Page 37: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen 과 Oracle 연동 - 조회성능 개선 예

Oracle TimesTen:Flight schedule제품 및 가격

사용자 인증정보

Oracle Database:Flight reservation주문 정보

사용자 전체정보

Reads

TimesTen 과 Oracle 연동

(Cache connect Option)

Page 38: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen 과 Oracle 연동 - 혼합 트랜잭션 성능 개선 예

Region 1 Region 2

Oracle Database:전체 가입자전제 요금 정보Message storage

ReadsWritesOracle TimesTen:

요금 계산

온라인 가입자

계좌 잔고

TimesTen 과 Oracle 연동

(Cache connect Option)

Page 39: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen + Oracle 혼용 사용 예

Transparent/ bi-directional

ApplicationWeb Clients

Java Web Application

WAS

Database

고 부하 업무 일반 업무

Periodical Batch Operation

최근 1주일치 data 유지

Cache Connect To Oracle 기능을 사용하여 고 부하의 업무 Data를 TimesTen In-Memory Database 에위치

이러한 구조의 장점은 다음과 같습니다.

1. 빠른

응답

시간

2. Peak Time 시

지연시간

최소화

3. 전체

시스템의

여유율

확보

-

부하

workload를

TimesTen에서

처리함으로써

Oracle DB 의

자원이 확보되어

배치성

마감

작업을

효과적으로

수행

자주 access 되는 Data를 TimesTen에 시간단위로cache가능하여 Memory 효율성 증대 (ex: 최근 일주일치 Data만 TimesTen 위치하고, 그 이외의 data는Oracle DB에서 조회)

TimesTen은 WAS 단에 위치할 경우 최고의 응답시간을 보장하지만 Database Tier에도 위치하여 성능향상 가능.

Cache Connect To Oracle 기능을 사용하여 고 부하의 업무 Data를 TimesTen In-Memory Database 에위치

이러한 구조의 장점은 다음과 같습니다.

1. 빠른

응답

시간

2. Peak Time 시

지연시간

최소화

3. 전체

시스템의

여유율

확보

-

부하

workload를

TimesTen에서

처리함으로써

Oracle DB 의

자원이 확보되어

배치성

마감

작업을

효과적으로

수행

자주 access 되는 Data를 TimesTen에 시간단위로cache가능하여 Memory 효율성 증대 (ex: 최근 일주일치 Data만 TimesTen 위치하고, 그 이외의 data는Oracle DB에서 조회)

TimesTen은 WAS 단에 위치할 경우 최고의 응답시간을 보장하지만 Database Tier에도 위치하여 성능향상 가능.

Data

누적

JDBC JDBC

Page 40: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

Proven in Real-Time Deployments 전세계에서

가장

많은

reference를

확보한

검증된

제품

• Real-time billing• Voice over IP• Mobile Networks

NetworksNetworks

• Value-added Services

• Revenue Assurance• Network and QOS

Management• Authentication

TelecomTelecom

• Order Matching• Risk

Management• Real-time

Analytics

Wall StreetWall Street

• Call Centers• Hosted CRM• Dynamic

personalization

CustomerCustomer--FacingFacingApplicationsApplications

Page 41: Oracle In-Memory Database TimesTen - :: DBguide.net :: … ·  · 2008-04-25Oracle In-Memory Database TimesTen ㈜비아이씨엔에스(BI C&S) ... • 표준Data Access API ( ODBC

TimesTen 7.0 Supported PlatformsPlatform ProcessorHP-UX 11i and 11i v2 PA-RISC (32-bit and 64-bit)

HP-UX 11i v2 IA64 (32-bit and 64-bit)

HP Tru64 64-bitIBM AIX 5L 5.2 and 5.3 POWER (32-bit and 64-bit)Microsoft Windows 2000, Windows XP, Windows 2003 Server X86 (32-bit and 64-bit)

MontaVista Linux CGE 4.0 X86 (32-bit and 64-bit)

Red Hat Enterprise Linux 3 and 4X86 (32-bit and 64-bit) Itanium2 (64-bit)

Sun Solaris 8, 9, 10 Sparc (32-bit and 64-bit)

Sun Solaris 10 x86 on AMD Opteron (32-bit*/64-bit)

SUSE Linux Enterprise Server 9, 10X86 (32-bit and 64-bit) Itanium2 (64-bit)