coherence in billing (oracle day moscow 2009)

11
© 2009 Grid Dynamics — Scaling Mission Critical Systems Алексей Рагозин Oracle Day, 2009

Upload: aragozin

Post on 24-May-2015

795 views

Category:

Technology


1 download

DESCRIPTION

Slide de

TRANSCRIPT

Page 1: Coherence in billing (Oracle day Moscow 2009)

© 2009 Grid Dynamics — Scaling Mission Critical Systems

Алексей РагозинOracle Day, 2009

Page 2: Coherence in billing (Oracle day Moscow 2009)

• Проблема биллинговой системы• Доступ к данным — узкое место

• Пути решения• Oracle TimesTen

• Oracle Coherence

• EFD

• Sun Oracle Exadata Storage Server

• Решение на базе Oracle Coherence

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 2

Page 3: Coherence in billing (Oracle day Moscow 2009)

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 3

Биллинговая система

Тел

еком

мун

икац

ионн

ые

серв

исы П

лат

ёжна

я си

стем

аC

RM

События(пополнение

баланса)

События(оказание услуг)

Баланс(включение/отключение

услуг)

АбонентыТарифыБаланс

...

Информация об абонентах

Тарифные планы

Информацияо балансе

Управление балансом

Тарификация услуг

Page 4: Coherence in billing (Oracle day Moscow 2009)

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 4

События, приводящие к изменению баланса абонента• Оказание услуг

• Начисление средств

Доступ к балансу

• Тарификация

• Списание

• Начисление

• Запросы от сети

• Запросы от CRM

Проблемы

• Нагрузка на чтение

• Нагрузка на запись

• Транзакционность

Биллинг

Потребление услуг Начисление средств

ТарификацияУправлениебалансом

Данные биллинговой системы

Баланс

События События

Запросы Запросы

Отключение услуг Информация о балансе

Page 5: Coherence in billing (Oracle day Moscow 2009)

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 5

Данные•Текущий баланс

•Связи между счётчиками (правила)

Балансы абонентов могут быть взаимосвязаны (групповые бонусы и т.п.)

Требования (20 миллионов абонентов)

•Число объектов (счётчиков) ~ 109

•Операций в секунду ~ 1000

•Время на операцию — не более 50ms

Биллинговая системаСобытия События

Подсистема управления балансом

Пакетнаяобработка

Запросы

Списание НачислениеТарификация

Списание

КонвертацияТекущ

ий баланс

Тарификация

Изм

енение

баланса

Квитанция

Процедура списания

Page 6: Coherence in billing (Oracle day Moscow 2009)

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 6

Оперативная память Flash память• Высокий IOPS

• Время доступа < 1ms

Вариант 1

Реляционную СУБД + накопители на flash памяти (EFD)

Вариант 2

Интегрированное решение Sun Oracle Exadata Storage Server

Хранение данных на магнитном диске• Ограничение по числу операций в секунду (IOPS)

• Время доступа порядка 10ms

Горизонтальное масштабирование

ФункцииРеляционной

СУБД

OracleCoherence

Оба продукта обеспечивают

• Высокую скорость• Сохранность данных• Отказоустойчивость

Один сервер

Малый кластер

Грид

Выборки и агрегация

данных

JDBC

SQL и аналитические

запросы

OracleTimesTen

Большойкластер

(10N-узлов)(N-узлов)(SMP) (NNN-узлов)

Page 7: Coherence in billing (Oracle day Moscow 2009)

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 7

Page 8: Coherence in billing (Oracle day Moscow 2009)

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 8

• Хранение данных в памяти

Coherence

Coherence

Coherence

CoherenceСУБД

Репликация состояния из Coherence в БД

CoherenceСУБД

Репликация состояния из Coherence в БД

CoherenceСУБД

Репликация состояния из Coherence в БД

• Распределение нагрузки

• Асинхронная репликация в БД• Горизонтальная

масштабируемость

• Денормализация схемы данных

Page 9: Coherence in billing (Oracle day Moscow 2009)

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 9

Масштабирование по данным

Число абонентов (миллионы)

Масштабирование по серверам

Число серверов

Характеристики серверов тестового стенда•CPU 2.5 GHz 4 ядра 2 сокета•RAM 32 GB

Сп

иса

ни

й в

се

кун

ду

Сп

иса

ни

й в

се

кун

ду

Page 10: Coherence in billing (Oracle day Moscow 2009)

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 10

Малое время отклика

• Хранение данных в оперативной памяти

• Эффективное сетевое взаимодействие (точка-точка)

• Coherence может встраиваться в приложение (исключается лишний интерфейс)

• Обработка данных по месту хранения — снижение нагрузки на сеть

Обеспечение надёжности

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

• Очередь репликации в БД также реплицируется

• Раннее обнаружение выхода серверов из состава кластера с автоматическим переразмещением реплик

Использование Coherence как платформы для распределённых приложений

• Управление распределённым исполнением

• Балансировка нагрузки

• Координация кластера

• Восстановление после сбоев

• Управление составом кластера

Page 11: Coherence in billing (Oracle day Moscow 2009)

November 12, 2009© 2009 Grid Dynamics — Scaling Mission Critical Systems 11

Алексей РагозинРуководитель направления Oracle Coherence