41
Oracle TimesTen In-Memory Database O Product Overview Oracle TSC DB Tech.

Oracle TimesTen In-Memory Database Product Overvie · In-Memory Admin/Utility programs Application Server Platf routines Server proxies Data Store(s) Ti T Data Store subdaemon(s)

  • Upload
    others

  • View
    25

  • Download
    0

Embed Size (px)

Citation preview

Oracle TimesTen In-Memory DatabaseOProduct Overview

Oracle TSC DB Tech.

TimesTen OverviewContent & IntentTimesTen OverviewContent & Intent

What is TimesTen?1

Performance2

TimesTen VS RDBMS3

Product Overview4

From backend to edge5

- 2 -

TimesTen OverviewI. What is TimesTen?TimesTen OverviewI. What is TimesTen?

I What is TimesTen ?I. What is TimesTen ?

- 3 -

TimesTen OverviewI. What is TimesTen?TimesTen OverviewI. What is TimesTen?

IMDB란?

Database on Main Memory• 시스템 구동 시 DB 전체를 메인 메모리에 상주

• 메모리 상의 데이터만을 이용하므로 고성능 처리가 가능• 메모리 상의 데이터만을 이용하므로 고성능 처리가 가능

IMDB 등장 배경디스크 I/O에 의한 성능 저하• 디스크 I/O에 의한 성능 저하

• 상용화된 64-Bit Systems의 출현

• 메모리 가격 하락

• 빠른 응답을 요구하는 실시간 시스템 증대

Real-Time 초고속 처리에 적합• I/O성능- Hard Disk:5~10ms, S-RAM:8~35ns, D-RAM: 90~120ns

• Disk 기반 DBMS보다 10배 빠른 성능 제공

- 4 -

TimesTen OverviewI. What is TimesTen?TimesTen OverviewI. What is TimesTen?

TimesTen이란?

MMDB product from Oracle• 전 세계 시장 점유율 1위

• 전 세계 500여개 이상의 기업에서 사용 중• 전 세계 500여개 이상의 기업에서 사용 중

• Product Version 8 (2009.1 출시예정)

실시간 데이터 관리 소프트웨어실시간 데이터 관리 소프트웨어

즉각 반응 고 확장성 고 가용성

고성능이 요구되는 Application내의고성능이 요구되는 Application내의이벤트,트랜잭션,데이터 관리

- 5 -

TimesTen OverviewII. PerformanceTimesTen OverviewII. Performance

II PerformanceII. Performance

- 6 -

TimesTen OverviewII. PerformanceTimesTen OverviewII. Performance

Lightning Fast Response

Average Response TimesTimesTen/DataServer 5.1

IBM eServer pSeries 630, 4-CPU, 1.2 GHz POWER4 AIX 5.2, 64-bit

37 3630

35

40

s

100% Updates

20

25

30

osec

ond 100% Inserts

100% Reads

15

5

10

15

Mic

ro

0Database Operation

- 7 -

TimesTen OverviewII. PerformanceTimesTen OverviewII. Performance

Higher Throughput on Less HardwareTransaction Throughput

350,000

Transaction ThroughputTimesTen/DataServer 5.1

IBM eServer pSeries 670, 12-CPU1.1 GHz POWER4 AIX 5.2, 64-bit

314,076

250,000

300,000

ond

100% Reads70-20-10 Mix100% Inserts100% Deletes100% Updates

208,569

150 000

200,000

,

ons

Per

Seco

pRDBMS 100% Reads

1212--CPU CPU SystemSystem

54 856

107,06295,540

50 000

100,000

150,000

Tran

sact

i SystemSystem

54,856

0

50,000

1 2 4 6 8 10 12

N b f A li ti P

- 8 -

Number of Application Processes

TimesTen OverviewII. PerformanceTimesTen OverviewII. Performance

Higher Throughput on Less HardwareTransaction Throughput

200,000

Transaction ThroughputTimesTen/DataServer 5.1Intel Xeon Pentium 4, 4-CPU

3.0 GHz Pentium 4, RedHat Linux 3.0

186,662

140 000

160,000

180,000

ond

100% Reads

70-20-10 Mix

100% Updates

RDBMS 100% Reads44--CPUCPU

93,318100,000

120,000

140,000

ions

per

sec

o 44--CPUCPUSystemSystem

58,925

31 97140,000

60,000

80,000

Tran

sact

31,971

0

20,000

1 2 4

- 9 -

Number of Application Processes

TimesTen OverviewII. PerformanceTimesTen OverviewII. Performance

Telecom Benchmark - Configurations

Oracle• Three-tier architecture• Benchmark application

Home Location Registry (HLR) application

Oracle + TimesTen• Three-tier architecture• Benchmark application• Benchmark application

running in middle tier• Benchmark application running in middle tier

• TimesTen 7.0 embedded in benchmark application

• Updatable cache• Updatable cache containing benchmark data

• Delete call forwarding• Get access data• Get basic subscriber data

1 Delete

3 Select

transactions

E i t Get basic subscriber data• Get new destination• Insert call forwarding• Update subscriber data• Update subscriber location

3 Select

1 Insert

2 Update

• RAM: 2GB• Processors: Intel Xeon 3GHz hyper-threading * 2• OS: Red Hat Enterprise Linux 4.0

Environment

- 10 -

TimesTen OverviewII. PerformanceTimesTen OverviewII. Performance

Telecom Benchmark - Transaction Response Time

- 11 -

TimesTen OverviewII. PerformanceTimesTen OverviewII. Performance

Telecom Benchmark - Transaction Throughput

- 12 -

TimesTen OverviewIII.TimesTen vs. RDBMSTimesTen OverviewIII.TimesTen vs. RDBMS

III TimesTen vs RDBMSIII.TimesTen vs. RDBMS

- 13 -

TimesTen OverviewIII.TimesTen vs. RDBMSTimesTen OverviewIII.TimesTen vs. RDBMS

TimesTen VS Conventional RDBMS

Oracle-TimesTenIn-Memory Database

Conventional RDBMS

ODBC/N ti API

Applications

Connection 부하 (IPC)

Disk-based 추가 기능에ODBC API

ODBC/Native API

Applications

DBMS 엔진TimesTen RDBMS메모리 복사 부하

데이터 주소 변환 부하

대한 부하

버퍼 관리 부하

• Embeddable: 20-30MB

I/O 부하

• Direct-Linked• Memory-Tuned Data Layout• Disks to Ensure Durability/Recovery

- 14 -

TimesTen OverviewIII.TimesTen vs. RDBMSTimesTen OverviewIII.TimesTen vs. RDBMS

Finding a Row of Data in an RDBMS

- 15 -

TimesTen OverviewIII.TimesTen vs. RDBMSTimesTen OverviewIII.TimesTen vs. RDBMS

Finding a Row of Data in TimesTen

- 16 -

TimesTen OverviewIII.TimesTen vs. RDBMSTimesTen OverviewIII.TimesTen vs. RDBMS

TimesTen VS Oracle

Characteristic Oracle TimesTen

Data Model Relational: SQL Relational: SQL

Target Applications Mission-critical Mission-critical

Optimization Disk-centric Memory-centric

Typical deployment Database tier Application tier

Architecture Client/Server Direct data access

Response Times Milliseconds Microseconds

Data Capacity Tens of terabytes Tens of gigabytes

Scalability Unlimited SMP/cluster Good SMP

- 17 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

IV Product OverviewIV. Product Overview

- 18 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

C h tiR li ti ti

TimesTen 제품군

TimesTen IMDB <Base Product>

Real-Time Database SystemReal-time data management for applications requiring

Cache option

Real-Time Dynamic Data Cache Real-time relational processing of selected data from an Oracle

Replication optionReal-Time Database Systemwith ReplicationReal-time data management, and replication for applications requiring for applications requiring

exceptional performance

Network

selected data from an Oracle database, including automatic data loading and update synchronization

replication, for applications requiring exceptional performance, with the failover, recovery, and evolution of databases with minimal downtime

N t kNetwork

B

Network

CacheDataServer

Typical Uses:Typical Uses:

Primary Subscriber(s)

B

DataServer DataServer

Typical Uses: yp

Application Server Acceleration

Enterprise App Acceleration

Application-Tier Data Caching

yp

Network Equipment & Systems

Value-Added Services

Reference Data

yp

Network Equipment & Systems

Value-Added Services

Reference Data

- 19 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Base Product: TimesTen 구성 요소

A li ti T lApplication or Tool

Web browser thin client

Oracle connect administrator

Application routines

TimesTen Client driver

Serverdaemonor

m

Network

Replication agent(s)

In-MemoryAdmin/Utility

programsApplication

routinesSer

ver P

latfo Server

proxiesagent(s)

Data Store(s)

Ti T

Data Store subdaemon(s)

TimesTenshared libraries

plic

atio

n-Ti

er

Checkpoint files

TimesTen daemonAp

p

Log files

Cacheagent

Oracle D t b

- 20 -

Database

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Base Product: Lifecycle of a TimesTen Datastore1) Data Store image read from Checkpoint file at start up1) Data Store image read from Checkpoint file at start-up2) Transaction written to log file (if configured)3) Changed pages written to oldest checkpoint file4) For safety, checkpoints are written to two alternating files5) A final Checkpoint is written at shut-down

DataStore(1) Upon Start-up and/or

Recovery Upon Exit

(5)

TimesTen

Recovery

(4)

Upon Exit

TimesTen

FullData Checkpoint

FullData Checkpoint

Upon Commit O f

(2)

Upon Checkpoint “n+1”(4)

Upon Checkpoint “n”(3)

All Changed PagesSince last “B” Checkpoint

StoreImage

CheckpointFile “B”

All Changed PagesSince last “A” Checkpoint

StoreImage

CheckpointFile “A”

…Inserts,Updates,Deletes

Log

Or flush

- 21 -

Since last checkpoint

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Base Product: Features

RDBMS/SQL 데이터 모델

• JDBC, ODBC APIs

• API for change notification Application

Network

TimesTen

Application

API for change notification

Application tier execution실시간 성능

TimesTen Libraries

Application

TimesTen Libraries

Application

Client-Server

TimesTen Libraries

ApplicationTimesTen Client lib

• Low latency and high throughput

• Efficient CPU utilization

데이터 지속성 및 복구 (on disk)

ServerDirect-linked

In-Memory데이터 지속성 및 복구 (on disk)유연한 구성

• Async and sync disk loggingTransaction Logs

In-Memory Database

• Embedded and client-server

관리 영역이 거의 없음Checkpoint files

Transaction Logs

- 22 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Base Product: 동시성 제어

Data Store 접근은 다중 프로세스와 Thread에 의해 공유됨

• Direct Data Access mode (low latency, very high-performance, database tightly coupled to application processes, embedded)

• Client-server mode (less performance intensive applications)

Concurrency control • Locks: data-store-level, table-level, row-level• Latches: 내부 데이터 구조에 대한 locking

Least

Most

Transaction isolation• Read committed • Serializable

ola

tion

ncurr

encySerializabl

e

t

자동적으로 Deadlock 감지 및 처리

Iso

Con

Read Committed Leas Most

- 23 -

t

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Base Product: Transaction ACID

Atomicity : full support for transactions(Commit/Rollback)Consistency

• 데이터의 일관성 유지. 자동적으로 디스크 정보를 이용하여 복구

작업 수행

Isolation (By locking)• Row level locking• Row-level locking

• READ COMMITTED isolation(default)

• 변경이 가해지는 Row들은 versioning 됨

• SERIALIZABLE isolation 또한 가능

Durability• 트랜잭션은 디스크에 기록되고 디스크를 이용해 복구됨• 트랜잭션은 디스크에 기록되고, 디스크를 이용해 복구됨

트랜잭션이 데이터를 변경할 때, logging과 locking이 이용되어 ACID 규칙을 유지하게 됨

- 24 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Replication: TimesTen to TimesTen

Network

Application Application

N-way, peer-to-peer Active/standby or

ti / ti lti l l

n-Ti

er P

latfo

rms Application

Program

TimesTen

Application Program

TimesTen

active/active, multi-levelData Store / 테이블 수준 정의

동기/비동기 전송In-MemoryDatabase

In-MemoryDatabase

App

licat

ion

자동복구

데이터 충돌 감지 및 처리

ReplicationTimesTen to TimesTen

- 25 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Replication: 다양한 구성

Active - Standby N – Way (update anywhere)

Active - Active (split workload)

Propagation

Active - Active (distributed workload)

- 26 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Replication: Async Rep. Inside

(1) 트랜잭션이 커밋, 어플리케이션은Sender Replication Agent 보내기 위한트랜잭션을 모은다.

(2) Full일 때 Sender Agent는 로그 파일에

Sender

(2) Full일 때 Sender Agent는 로그 파일에트랜잭션을 기록하고(durably commit),

(3) Receiver에 전달한다.

Receiver(4) Receiver Agent는 모든 트랜잭션을

data store에 적용하고에 적용하(5) Log file에 기록한다.(6) Receiver Agent 작업 결과를

Primary Agent에 보낸다.

(7) Sender Agent 트랜잭션 로그 파일에bookmark를 한다.

Sender

- 27 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Replication: Sync Rep.(Return Receipt) Inside

Sender

(1) 응답 회수 방식으로 트랜잭션 커밋

(2) Sender Agent는 로그 파일에 트랜잭션을기록하고(durably commits).

에 내용을 전달

Receiver

(3) Receiver에 내용을 전달.

(4) Receiver 수신 신호를 송신.

Sender

(5) 어플리케이션으로 커밋 리턴.

R i(6) Receiver Agent는 모든 트랜잭션을 data

store에 적용하고(7) Log file에 기록.

Receiver

(8) Receiver는 최종 응답을 송신.

Sender(9) Sender Agent 트랜잭션 로그 파일에 bookmark를 기록.

- 28 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Replication: Sync Rep.(Return 2-Safe ) Inside

Sender

(1) 2-Safe방식으로 트랜잭션 커밋

Local txn는 pre-commit 로그 레코드를 기록.

(2) Receiver에 로그를 전달

Receiver

(3) Receiver Agent는 data store에서

트랜잭션 로그를 적용하고,

Receiver

(4) 응답을 보내고

Sender

(5) Bookmark를 수정.

(6) Sender Agent는 대기 중인 트랜잭션을 풀고

(7) Bookmark를 수정.

- 29 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Cache Connect to Oracle

오라클 테이블 전체 또는 부분 데이터를

Caching

Read-only or updateable

양방향 데이터 전송

• From TimesTen to Oracle

• From Oracle to TimesTen

Async or sync write-through

하나의 오라클 DB에 다중 Data Store 가능

Replication option과 연동하여 사용 가능

- 30 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Cache Connect to Oracle

오라클 DB의 앞 단에 고성능 Cache를 위치시키는 효과

오라클과 TimesTen간의 양방향 데이터 전송

10g RAC와 연동

기본 구성요소:

• TimesTen IMDB

• Oracle Agent

C h G• Cache Groups

• 웹 환경 GUI툴

- 31 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Cache Connect to Oracle: 양 시스템간 데이터 전송

양 DB간의 데이터 전송은 Application 로직에 독립적

TimesTen updates to Oracle

• Automatic Propagation or manual Flush

Oracle updates to TimesTen

• Full refresh

• Incremental refresh

A t ti M l

Propagate Refresh

• Automatic or Manual

Cache Group 기준

- 32 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Cache Connect to Oracle: Cache Group

Use Cache Groups to

• 테이블 하나 또는 다중 테이블을 대상으로 정의

• 컬럼 범위 설정 / Row 범위 설정

• 동기화 행위 지정

ReadOnly

Synchronous WriteThrough

A h W it Th hAsynchronous WriteThrough

User Managed

- 33 -

TimesTen OverviewIV.Product OverviewTimesTen OverviewIV.Product Overview

Cache Connect to Oracle: Failover for Oracle RAC

RAC 노드 failure 자동 감지

가용한 노드로 자동 재 접속

- 34 -

TimesTen OverviewV.Support ToolsTimesTen OverviewV.Support Tools

V Support ToolsV. Support Tools

- 35 -

TimesTen OverviewV.Support ToolsTimesTen OverviewV.Support Tools

TimesTen Extension for Oracle SQL Developer

Graphical Development ORACLE Tool

Browse, create, edit, and delete TimesTen database objects

- 36 -

TimesTen OverviewV.Support ToolsTimesTen OverviewV.Support Tools

TimesTen Extension for Oracle SQL Developer

Run SQL statements and scripts

Execute TimesTen built-in procedures and utilities

- 37 -

TimesTen OverviewV.Support ToolsTimesTen OverviewV.Support Tools

TimesTen Plug-In for Oracle Enterprise Manager

Monitor system information

TimesTen configuration and performance statistics

- 38 -

TimesTen OverviewVI.From backend to edgeTimesTen OverviewVI.From backend to edge

VI From Backend to edgeVI. From Backend to edge

- 39 -

TimesTen OverviewVI.From backend to edgeTimesTen OverviewVI.From backend to edge

Where deployed ?

Mobile DevicesTelematicsField Force Automation

Telecom OSS/BSSIP Multimedia Systems

Gateways / RoutersStorage & Systems Mgmt

Healthcare EquipmentDistributed

Asset Management

IP Multimedia SystemsCore Networking

SystemsSecurities Trading

Security / AuthenticationMobile Services Software

Appliances

Healthcare EquipmentIndustrial Systems

Manufacturing SystemsSemiconductor

Call Centers / CRMReservations

EquipmentCommunications

SystemsTelco SoftSwitches OCMS /

ONCS

Mobile Applications

ONCS

Data CenterApplications

Edge Applications

- 40 -