81
1 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Обзор TimesTen In-Memory Database

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Обзор TimesTen In-Memory Database

1 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Page 2: Обзор TimesTen In-Memory Database

2 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle TimesTen In-Memory DatabaseOracle In-Memory Database Cache

Алекей Панков Oracle СНГ

Page 3: Обзор TimesTen In-Memory Database

3 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

<Insert Picture Here>

План

• Обзор Oracle TimesTen In-Memory Database

• Oracle TimesTen IMDB Cache

• Возможности Oracle TimesTen

• Примеры внедрений

• Лицензирование

• Q & A

Page 4: Обзор TimesTen In-Memory Database

4 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Обзор TimesTen In-Memory Database

Page 5: Обзор TimesTen In-Memory Database

5 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Обзор Oracle TimesTen In-Memory Database

• Зачем нужны In-memory базы данных?

• Что такое Oracle TimesTen? Основы архитектуры.

• Какие задачи TimesTen может решить быстрее и лучше, чем традиционные дисковые СУБД?

• Какие есть возможности и ограничения?

Какие вопросы будут рассматриваться

Page 6: Обзор TimesTen In-Memory Database

6 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Традиционное понимание работы с БД

RDBMSRDBMSApplicationApplication

ApplicationApplication

SQLSQL

ResultsResults

RDBMS + client/server взаимодействие

Page 7: Обзор TimesTen In-Memory Database

7 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Приложения, критичные ко времени отклика

Real-time приложенияМгновенный отклик/ Высокая масштабируемость/

Должны быть всегда доступны

Авторизация,Online транзакции,

Услуги

Real-Time аналитика -Интерактивная панель

Витрины данных

Электронная коммерция,Персонализация,

Real-Time обслуживание

Анализ данных рынка,Реакция на события,

Торговля

Page 8: Обзор TimesTen In-Memory Database

8 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Как ускорить приложение? Типичный подход

• Настройка базы данных– Оптимизация запросов и схемы БД

• Upgrade оборудования– Добавление CPU, RAM, дискового пространства

• Построение ‘кэша’ на стороне приложения

Page 9: Обзор TimesTen In-Memory Database

9 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

БД с “самодельным” кэшем

Проблемы ‘кэша’ на уровне приложения:•Ограниченная функциональность, непереносим между приложениями•Недоступен язык SQL•Рост стоимости поддержки приложения•Нет средств поддержки высокой доступности (high availability)

Производительность и надежность- обязательные требования

RDBMSRDBMSApplicationApplication

ApplicationApplication

SQLSQL

ResultsResults

Cache

Cache

Page 10: Обзор TimesTen In-Memory Database

10 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

TimesTen In-Memory Database

Oracle TimesTen – реляционная СУБД, целиком размещаемая в оперативной памяти.

Приложение

Приложение

Page 11: Обзор TimesTen In-Memory Database

11 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Преимущества TimesTen In-Memory Database

• Высокопроизводительная БД, целиком размещаемая в RAM

• Гибкие возможности для сохранения данных на диск• Оптимизация структур и алгоритмов для работы в оперативной памяти• Легкая установка и конфигурирование• Все возможности реляционной БД• Средства обеспечения высокой доступности• Возможность использования в качестве кэша для

СУБД Oracle Database (в т.ч. для RAC)

Page 12: Обзор TimesTen In-Memory Database

12 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Что Oracle TimesTen даёт приложениям?

• Приложения с интенсивной OLTP нагрузкой– Кэширует “горячие” данные в TimesTen– Обеспечивает минимальное и стабильное время отклика– Освобождает ресурсы основной «дисковой» СУБД

• Приложения, работающие с большими базами данных– Кэширует подмножество данных в TimesTen– Улучшает производительность критичных запросов– Уменьшает время отклика BI-запросов

Page 13: Обзор TimesTen In-Memory Database

13 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Архитектура TimesTen In-Memory Database

Прямой доступ к приложениюTimesTen библиотеки

Клиент-Сервер Приложение

TimesTen Клиент библиотека

База данных в памяти

Клиент/Сервер

JDBC / ODBC / ADO.NET / OCI / PLSQL

Контрольные точки

Транзакционные логи

Быстрый доступ к данным

• In-memory база данных– БД целиком находится в RAM – Стандартный SQL с JDBC, ODBC, OCI,

Pro*C, PL/SQL– Совместимость с Oracle Database

• Надежность и доступность– ACID транзакции

• Экстремальная производительность– Микросекундное время отклика– Высокая пропускная способность

• Встраиваемая

Page 14: Обзор TimesTen In-Memory Database

14 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Почему TimesTen быстрее?

Hash Function

Linked Lists Into Buffers

Buffer Pool

Приложение

SQL

Копирование записей в Private Buffer

Предположим, что страница уже в памяти...

Пересылка буфера в приложение (via IPC)

Table#Page#QueryOptimizer /Executor

Определение адреса искомой страницы на диске

Вычисление указателя на адрес страницы (Page Pointer) с использованием хэширования и линейного поиска

IPC

Традиционная СУБД

Data Page

Page 15: Обзор TimesTen In-Memory Database

15 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Memory-Resident Database

Приложение

SQL

Вся БД загружена с диска в память до начала работы

Memory Address

Query Optimizer/ Executor

Data Store

Вычисление прямого адреса в памяти для искомой записи

Копирование данных в буфера приложения

Почему TimesTen быстрее?TimesTen In-Memory Database

Page 16: Обзор TimesTen In-Memory Database

16 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Почему TimesTen быстрее?

Используются физические адреса записей в RAM

Не нужно преобразовывать логические адреса в физические

Структуры данных, например индексы, оптимизированы для работы в RAM

Нет издержек, связанных с управлением буферным кэшем

TimesTen нужно меньше CPU ресурсов чтобы выполнить ту же работу

Page 17: Обзор TimesTen In-Memory Database

17 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

В каких случаях эффективен TimesTen?Время Работы Приложения

Сетевые Задержки Время Доступа к БД

Время Доступа к TimesTen

Время Доступа к TimesTen в ‘direct linked’ режиме

Время Отклика Приложения

Page 18: Обзор TimesTen In-Memory Database

18 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Ограничения

• 32-bit OS– 2 GB на большинстве платформ– 3 GB на Windows и HP

• 64-bit OS– Ограничен размером доступной RAM

Максимальный размер БД

Page 19: Обзор TimesTen In-Memory Database

19 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

TimesTen In-Memory DatabaseLOBs

Cache AdvisorIn-Memory Analytics

Columnar CompressionParallel Replication

ODP.NET SupportCache Grid for Scale Out

Oracle Clusterware IntegrationPL/SQL Support

Oracle Call Interface SupportOEM & SQLDeveloper Integration

Oracle Database Data Types SupportNational Language Support

Integration with Oracle RACMid-tier Cache for Oracle DB

Online UpgradesHigh Availability

1st Commercial In-Memory RDBMS

2011

1998

2000

2009

2005

2007

2010

Через годы инноваций

Page 20: Обзор TimesTen In-Memory Database

20 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

0.00

2.00

4.00

6.00

8.00

10.00

12.00

Read Transaction Update Transaction

3.58

10.82

Mic

rose

cond

s

Производительность TimesTenLow Latency – Микросекундное время отклика

Millionths of a

Second

Millionths of a

Second

Intel® Xeon® CPU E7-4870 @2.4GHZ 4 sockets 10 cores/socket 2 hyper-threads/core 80 vCPU – TimesTen 11.2.2.4

Page 21: Обзор TimesTen In-Memory Database

21 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Производительность TimesTenМасштабируемость операций чтения

0

2,000,000

4,000,000

6,000,000

8,000,000

10,000,000

12,000,000

14,000,000

16,000,000

1 5 10 20 30 40 50 60 80

279,2931,412,641

2,860,771

5,724,425

8,632,024

11,448,419

12,739,961

13,694,89614,562,577

Reads

Per

Second

Number of Concurrent Processes

14.5млн чтений в секунду

Intel® Xeon® CPU E7-4870 @2.4GHZ 4 sockets 10 cores/socket 2 hyper-threads/core 80 vCPU – TimesTen 11.2.2.4

Page 22: Обзор TimesTen In-Memory Database

22 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Производительность TimesTenМасштабируемость смешанной OLTP нагрузки

0

500,000

1,000,000

1,500,000

2,000,000

2,500,000

1 5 10 20

177,067

843,487

1,614,785

2,039,811

Transactions

Per

Second

Concurrent Processes

Более 2 млн Транзакций в

секунду

Intel® Xeon® CPU E7-4870 @2.4GHZ 4 sockets 10 cores/socket 2 hyper-threads/core 80 vCPU – TimesTen 11.2.2.4

Page 23: Обзор TimesTen In-Memory Database

23 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle TimesTen IMDB Cache

Page 24: Обзор TimesTen In-Memory Database

24 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Кэширование даных из ‘дисковой’ СУБД

RDBMSRDBMSApplicationApplication

ApplicationApplication

SQLSQL

ResultsResults

Cache

Cache

Page 25: Обзор TimesTen In-Memory Database

25 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

• Опция Oracle Database• Кэшируются таблицы из Oracle Database• Пользователь конфигурирует Cache

Groups• Кэширование индивидуальных таблиц

и зависимых таблиц • Кэширование всех или подмножества

строк и колонок• Чтение или изменение• Автоматическая синхронизация данных

• Из TimesTen в Oracle• Из Oracle в TimesTen

Checkpoints Tx Logs

Network

Client-Server

Cache Tables

Cache Agent

Direct-linked

ApplicationTimesTen Libraries

TimesTen Client lib

Application

TimesTen In-Memory Database Cache

Page 26: Обзор TimesTen In-Memory Database

26 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

• Cache Group определяет данные из Oracle database для кэширования

• Зависимые таблицы– Все подмножество столбцов и строк– Определено с помощью SQL

CREATE CACHE GROUP nameFROM owner.tab1 (col1, col2), owner.tab2 (col1, col4)…WHERE <predicate>

• Кэшированные таблицы – регулярные таблицы в TimesTen– Joins/search, insert/update/delete

TimesTen In-Memory Database CacheГибкие возможности кэширования

Application Transactions

Root Table

ChildTable

ChildTable

ChildTable

Cache Groups

Page 27: Обзор TimesTen In-Memory Database

27 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Автоматическая синхронизация

In-Memory Cache Tables

Application Reads

In-Memory Cache Tables

Application Reads

In-Memory Cache Tables

Application Reads

Изменения в БД Oracle

Read-Only Cacheдля часто запрашиваемых данных

• БД Oracle является ‘мастером’

• Изменения в БД Oracle автоматически обновляются в Cache Group– Частота (интервал) обновлений

настраивается

• Изменения в Cache Group запрещены– Возможность использования

сквозной записи для изменений в БД Oracle

Page 28: Обзор TimesTen In-Memory Database

28 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Автоматическая синхронизация

In-Memory Cache Tables

Application Transactions

In-Memory Cache Tables

Application Transactions

In-Memory Cache Tables

Application Transactions

Updatable (обновляемый) Cacheтранзакционная целостность

• TimesTen является ‘мастером’

• Транзакции выполняются в TimesTen

• Зафиксированные транзакции передаются в Oracle database– Асинхронная передача

(asynchronous write-through ) обеспечивает лучшее время отклика и производительность

Page 29: Обзор TimesTen In-Memory Database

29 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

• READ ONLY

• SYNCHRONOUS WRITETHROUGH (SWT)

• ASYNCHRONOUS WRITETHROUGH (AWT)

• USER MANAGED

Типы Cache GroupsTimesTen In-Memory Database Cache

Page 30: Обзор TimesTen In-Memory Database

31 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

TimesTen In-Memory Database Cache Grid Peer-to-peer

коммуникация между узлами

МасштабируемостьВысокая

надежность

In-MemoryDatabaseCache

Application

In-MemoryDatabaseCache

Application

In-MemoryDatabaseCache

Application

In-MemoryDatabaseCache

Application

Синхронизация с Oracle database

Транзакционная целостность

In-MemoryDatabaseCache

Application

Online добавление (и удаление) узлов Cache Grid

Page 31: Обзор TimesTen In-Memory Database

32 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Демонстрация

Page 32: Обзор TimesTen In-Memory Database

33 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

ВозможностиTimesTen

In-Memory Database

Page 33: Обзор TimesTen In-Memory Database

34 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 34: Обзор TimesTen In-Memory Database

35 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

High Availability

• Высокое быстродействие– Синхронная / Асинхронная

– Memory-to-Memory репликация

– Параллельная пересылка логов

– Параллельное применение изменений на Standby и Subscribers

• Поддержка Disaster Recovery

Real-Time репликация транзакций

Read-Only Subscribers

- Reader Farm

- Disaster Recovery

Транзакции приложений

Active

Приложение читает с Hot Standby

Standby

SubscriberSubscriber

Subscriber

Page 35: Обзор TimesTen In-Memory Database

36 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

High Availability

• Доступно для Client / Server соединений – Настраивается приложением

• Automatic connection failover– TimesTen база данных автоматически переходит на Standby

• Автоматическое подключение приложения к Active – Соединение сохраняется

Automatic Client Connection Failover

Page 36: Обзор TimesTen In-Memory Database

37 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

High Availability

• Read-write caching– Параллельная репликация

транзакций с Active на Standby– Параллельная “сквозная” запись

транзакций в Oracle Database•Read-only caching

– Многопотоковое обновление транзакций Oracle Database

– Параллельная репликация свежих транзакций на Standby

• Приложение продолжает работу, даже если Oracle Database падает

Read-write и Read-only Caching

Автоматическая синхронизация

Hot Standby доступен для

чтенияТранзакции приложений

Active Standby

Page 37: Обзор TimesTen In-Memory Database

39 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

High Availability

• Поддержка синхронного физического standby

- Отказоустойчивость

- Переключение

- Параллельные обновления (rolling upgrades)

Интеграция с Oracle Data Guard

Real Application Clusters

Standby Oracle Database

Data Guard

In-Memory Database Cache

Cache tables

Приложения

Cache tables

Приложения

Page 38: Обзор TimesTen In-Memory Database

42 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 39: Обзор TimesTen In-Memory Database

43 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Access ControlУправление Доступом

• В Oracle TimesTen существует возможность включения/выключения Access Control

• Пользователь установивший TimesTen, является её администратором

• Контроль доступа обеспечивается стандартными SQL командами (Create user, Drop user, Grant, Revoke)

• Роли включают read-only, read-write, DBA, instance managerПример:

> CREATE USER user_tt IDENTIFIED BY ‘user’;> GRANT admin, ddl TO user_tt;

Page 40: Обзор TimesTen In-Memory Database

45 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 41: Обзор TimesTen In-Memory Database

46 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности разработчиков, подключение к БД

SQL

PL/SQL

Languages C/C++/C#

ODBC

ttClasses

OCI, Pro*C

ADO.NET

J2EE App Servers OR MappingJava/JDBC

Интерфейсы доступа к БД

Page 42: Обзор TimesTen In-Memory Database

47 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности разработчиков, подключение к БДПодключение к БД.

Два вида подключения:

• Direct driver connection

• Client/server connection

TimesTen Libraries

Приложение

Контрольные точки

Network

Клиент-Сервер

Прямой доступ

Библиотеки TimesTen

ПриложениеTimesTen

библиотека

Приложение

Транзакционные логи

БД в памяти

Page 43: Обзор TimesTen In-Memory Database

49 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности разработчиков, подключение к БД

.

Поддержка SQL

• SQL – 92:• DCL (GRANT, REVOKE)• DDL (CREATE, ALTER, DROP,TRUNCATE)• DML (INSERT,UPDATE, DELETE,MERGE, SELECT)•Etc.

• SQL queries:• FOR UPDATE• ORDER BY• GROUP BY• GROUP BY CUBE• Etc.

• Типы данных:• Числовые• Строковые• Даты• LOB(включая CLOB, NCLOB,BLOB)

• Аналитические функции:• AVG, SUM, COUNT, MAX, MIN, Etc.

Page 44: Обзор TimesTen In-Memory Database

50 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности разработчиков, подключение к БД

• PL/SQL engine встроен в Oracle TimesTen• Создание (Create), изменение (alter), удаление (drop) процедур,

функций, пакетов• Может быть использован со всеми TimesTen APIs (ODBC, JDBC, OCI,

Pro*C,и др.)• Процедуры и метаданные хранятся в системных таблицах TimesTen

Поддержка PL/SQL

Page 45: Обзор TimesTen In-Memory Database

51 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Поддержка PL/SQL

• Анонимные блоки, хранимые пакеты, процедуры и функции• Oracle 11g PL/SQL язык

- continue• Статический и динамический SQL

- EXECUTE IMMEDIATE и DBMS_SQL• Обработка исключений• IN, OUT, IN/OUT и REF CURSOR bind-переменные• Отслеживание зависимостей и автоматическая рекомпиляция• Bulk collect• Стандартные пакеты (DBMS_OUTPUT, др.)• Стандартные представления (user_objects, user_source, и др.)• Etc.

Основные возможности

Page 46: Обзор TimesTen In-Memory Database

52 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 47: Обзор TimesTen In-Memory Database

53 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Многопользовательский конкурентный доступ

Конкурентный доступ

• Полная поддержка транзакций (COMMIT/ROLLBACK)

• Версионность• Записи не блокируют чтения• Чтения не блокируют записи• TimesTen поддерживает

распределенные транзакции через XA /JTA интерфейс

Page 48: Обзор TimesTen In-Memory Database

54 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Многопользовательский конкурентный доступ

• Поддержка уровней изолированности транзакций- READ COMMITTED- SERIALIZABLE

• Блокировки (ttLockWait (seconds) 0.0 - 1000000.0 По умолчанию 10 sec )- На уровне строк- На уровне таблиц- На уровне Data Store

Многопользовательский доступ

Page 49: Обзор TimesTen In-Memory Database

55 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 50: Обзор TimesTen In-Memory Database

56 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Оптимизация запросовОптимизация запросов

• Hash Indexeso Сверх-быстрый поиск точных значений и эквисоединенийo Не больше одного индекса на таблицу

• T-Tree Indexeso Memory-optimized index technologyo Создаются командой SQL “CREATE INDEX” o Быстрый поиск точного значения и диапазона значенийo Создаются по умолчанию при создании первичного ключа

• Cost-Based Optimizero Планы и хинтыo Статистика

• BITMAP

Page 51: Обзор TimesTen In-Memory Database

58 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 52: Обзор TimesTen In-Memory Database

59 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Журнализация изменений

• Все транзакции логируются в in-memory log buffer а затем сохраняются на дискo Асинхронный commito Синхронный (надежный) commit

• Автоматические контрольные точкиo TimesTen использует 2 файла контрольной точки для каждого data store

• После перезапуска системы, данные могут быть загружены в память из файлов контрольных точек

Журнализация изменений

Page 53: Обзор TimesTen In-Memory Database

60 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 54: Обзор TimesTen In-Memory Database

61 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Transaction Log MonitoringTransaction Log API (XLA)

• Отслеживает изменения в таблицах и материализованных представлениях

• Поддержка нескольких, одновременных XLA приложений, работающих с одним data store

• Поддержка для C++ в TTClasses

Page 55: Обзор TimesTen In-Memory Database

62 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 56: Обзор TimesTen In-Memory Database

63 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

XLA приложенияВозможности и примеры

• Trigger-like функциональность– Любой INSERT, UPDATE, DELETE в базе данных может мониториться– Для UPDATEs видны старая и новая копии данных– 1000-чи транзакций в секунду – намного быстрее чем триггеры

• Репликационные агенты– Реплицировать данные в реляционные и нереляционные базы данных

• Обработка событий– Когда цена акции ORCL вырастет на $1.00 оповестить другие

приложения– Когда добавлен новый подписчик, оповестить биллинговую и другие

системы

Page 57: Обзор TimesTen In-Memory Database

64 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 58: Обзор TimesTen In-Memory Database

65 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

TimesTen In-Memory DatabaseАвтоматическая очистка данных

• Автоматическая очистка данных – это операция удаления данных, которые больше не нужны

• Два типа очистки– Time-based aging – основана на timestamp значениях– Usage-based aging – основана на LRU алгоритме

• Пользователь конфигурирует политику очистки – Устанавливает политику на выбранные таблицы или cache groups

• Приложение использует только «горячие» данные– Скользящее окно кэшируемых данных– Контроль размера БД

Page 59: Обзор TimesTen In-Memory Database

66 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 60: Обзор TimesTen In-Memory Database

67 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Columnar compression

• Возможность сжатия таблиц на уровне столбцов Уменьшение места для хранения таблиц за счет устранения избыточности (повторяющиеся значения в столбцах)• Улучшение производительности на SQL запросах FullScan

• Возможность ручного выбора столбцов таблицы для сжатия

В зависимости от типа данных позволяетв 5 и более раз сократить место дляхранения таблицы

Columnar compression

Page 61: Обзор TimesTen In-Memory Database

68 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Возможности TimesTen In-Memory Database

• High Availability и Disaster Recovery

• Access Control• Возможности для

разработчиков, подключение к БД

• Многопользовательский конкурентный доступ

• Оптимизация запросов

• Журнализация изменений• Transaction log monitoring• XLA приложения• Автоматическая очистка данных• Columnar Compression• Поддержка в SQL Developer и

Enterprise Manager

Page 62: Обзор TimesTen In-Memory Database

69 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Поддержка в SQL Developer и Enterprise Manager

• Browse, Edit, Create, Alter TimesTen объекты БД• Простое кэширование таблиц Oracle Database

– Create, Drop, Alter cache groups– Load, Unload, Flush, Refresh cache data

• Разработка PL/SQL процедур, функций и пакетов• SQL планы выполнения, обновление статистики• Создание отчетов• Доступ к SQL Worksheet для ad-hoc

queries• Выполнение встроенных процедур

SQL Developer

Page 63: Обзор TimesTen In-Memory Database

70 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Поддержка в SQL Developer и Enterprise ManagerPlug-In for Oracle Enterprise Manager

• Отслеживание ключевых метрик производительности

• Управление предупреждениями

• Out-of-the-box отчеты для TimesTen метрик

• Создание своих отчетов с возможностью визуализации

• Низкие накладные расходы

Page 64: Обзор TimesTen In-Memory Database

71 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle TimesTen и Инженерные

Системы

Page 65: Обзор TimesTen In-Memory Database

72 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle TimesTen с Exalogic и ExadataЭкстремальная производительность на инженерных системах

ApplicationTier

DatabaseTier

• TimesTen разрабатывался для работы на уровне приложения

• TimesTen сертифицирован на Exalogic

• TimesTen может быть кэшем для Oracle Exadata

InfiniBand

In-Memory Database Cache Grid

Page 66: Обзор TimesTen In-Memory Database

73 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle Exalytics Business Intelligence Machine

• Первое инженерное решение для аналитики• Лучшая визуализация аналитики• В основе TimesTen In Memory Database с опциями

columnar compression и поддержкой OLAP

Page 67: Обзор TimesTen In-Memory Database

74 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

In-Memory аналитические инструменты

Memory Optimized Essbase

TimesTen для Exalytics

Adaptive In-Memory Tools

1 TB RAM40 Processing Cores

High Speed Networking

In-Memory Analytics Hardware

Оптимизированный Oracle Business Intelligence Foundation Suite

Exalytics – Инженерная система для аналитики

Page 68: Обзор TimesTen In-Memory Database

75 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

In-Memory аналитика

Heuristic Adaptive In-Memory Cache– Решает что хранить в памяти

– Управляет нагрузкой

– Оптимизирует производительность

In-Memory Database– Эффективно управляет данными в памяти– Технологии

• TimesTen In-Memory DatabaseoColumnar compressionoAnalytic functions

1 TB RAM

TimesTen In-Memory Database

Heuristic Adaptive

In-Memory Cache

Page 69: Обзор TimesTen In-Memory Database

77 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Примеры Внедрений

Page 70: Обзор TimesTen In-Memory Database

78 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Проверено в real-time условияхВнедрено в более 1000 компаниях

Page 71: Обзор TimesTen In-Memory Database

79 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

79

• Два активных data центра с локальной поддержкой HA

• Улучшение времени отклика и пропускной способности(> 10x)

• Быстрая разработка и внедрение(5 месяцев)• Стандартные APIs (JDBC, SQL, PL/SQL)

Почему TIimesTen?

Online Book Store Recommendation Engine• Индустрия : Торговля• Сфера : Книги, Музыка, Игры• Приложение : Online магазин

• Java приложение• Обзор продуктов и возможность покупки• Многомерные рекомендации

• Высокие нагрузки на базу данных с ростом количества пользователей

• Нужно стабильное время отклика (>500M строк)• Высокая доступность– 24x7• Обработка всплесков активности• Управление нагрузкой на двух data центрах• Решение должно поддерживать Disaster Recovery

Заказчик

Проблемы

Решение• Oracle TimesTen In-Memory Database• Oracle Database• Oracle Data Guard

Два Data центра каждый с Active-Standby TimesTen cache databases

App Servers

Data Guard

Data Center 1 Data Center 2

Page 72: Обзор TimesTen In-Memory Database

80 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

80

• Лучше производительность и масштабируемость• HA через active standby in-memory БД• DR поддержка удаленного subscriber• Легкое внедрение со стандартным SQL

интерфейсом

Почему TimesTen ?

Real-Time Fraud Detection System

• Индустрия : Коммуникации• Сфера : Телеком• Приложение:Real Time обнаружение мошенничества

• Анализ голосового(телефон) и данных(Internet) трафика для обнаружения мошенничества в реальном времени

• >2.5 млрд. телефонных записей в день• Предупреждения, основанные на правилах

• Имеющееся решение на справляется с требованиями с ростом входящего трафика

• Нужна High Availability и Disaster Recovery

Заказчик

Проблемы

Решение• Oracle TimesTen In-Memory Database Cache• Oracle Database

DR Site

SubscriberActive Standby

Page 73: Обзор TimesTen In-Memory Database

81 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Real-Time Revenue Management Server

• Меньше время отклика• Выше производительность• Больше subscribers• Меньше общая стоимость владения• Минимальные изменения приложений

• Индустрия : Телеком• Сфера : Тарификация• Приложение : Биллинг

Заказчик

Решение• Кэшировать данные в TimesTen• Масштабировать с помощью in-memory cache grid

• Real-time обновление вTimesTen• Центральный репозиторий в Oracle Database

Oracle Billing and Revenue Management

Преимущества

TimesTen

CacheGrid

EnterpriseMobile Broadband

Page 74: Обзор TimesTen In-Memory Database

82 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Лицензирование

Page 75: Обзор TimesTen In-Memory Database

83 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Опции

• Доступно четыре варианта TimesTen:o Oracle TimesTen In-Memory Database (нет поддержки cache grid,

аналитических функций и columnar compression)

o Oracle In-Memory Database Cache (необходима лицензия на Oracle Database, который используется в качестве источника кэша)

o In-Memory Database Cache for Oracle Applications ( используется совместно с приложением BRM)

o Oracle TimesTen In-Memory Database for Exalytics ( полная функциональность)

Page 76: Обзор TimesTen In-Memory Database

84 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Лицензирование

Option Named User Plus Software Update License & Support

Processor License Software Update License & Support

TimesTen In-Memory Database

460(min – 25)

101.20 23,000 5,060.00

In-Memory Database Cache

460(min – 25) 101.20 23,000 5,060.00

In-Memory Database Cache for Oracle Applications

184 40.48 9,200 2,024.00

TimesTen In-Memory Database for Exalytics

300 66 34,500 7,590

Page 77: Обзор TimesTen In-Memory Database

85 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Oracle TimesTen In-Memory Database

• Предсказуемое и ограниченное время отклика– Микросекунды вместо миллисекунд– Высокая производительность– Высокая пропускная способность

• Высокая доступность и восстанавливаемость

• Стандартная реляционная модель, поддержка SQL– Не нужно переписывать бизнес логику или интерфейс

• Кэширование таблиц Oracle Database c автоматической синхронизаций данных

Summary

Page 78: Обзор TimesTen In-Memory Database

86 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Дополнительная информация

• White papers• Quick Start Guide и обучение• Форум• И многое другое

http://www.oracle.com/technetwork/database/timesten

Page 79: Обзор TimesTen In-Memory Database

87 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Q&A

Page 80: Обзор TimesTen In-Memory Database

88 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.

Page 81: Обзор TimesTen In-Memory Database

89 Copyright © 2012, Oracle and/or its affiliates. All rights reserved.