Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 15 лет назад пользователемHighLoad2009
1 Особенности использования TimesTen In-Memory Database в высоконагруженной среде Михаил Гранкин, QIWI
2 Что такое TimesTen РСУБД, работающая полностью в памяти. Закрытый исходный код, коммерческая лицензия Поддерживает SQL в версии 7.05 и PL/SQL в версии 11g Cost-based optimizer JDBC, ODBC в версии 7.05 и OCI в версии 11g Интеграция с Oracle database Устанавливается на Unix/Linux/Windows
3 Наша нагрузка (на один инстанс) Около 150 таблиц Около 150 млн строк в этих таблицах 1000 подключенных сессий 23Гб загруженных в память данных Commit rate ~ 3000
4 Управление запуском Размер datastore – Фиксирован – Может только увеличиваться – Формула: Размер = Сколько есть – OS – 2 мб * max_session_amount – temp_size Swapinness в 0 hugepage включить
5 Уровни изоляции транзакции Read commited – Читатели не блокируют писателей – Писатели не блокируют читателей – Хранится две версии модифицируемой записи: текущая и новая – select sum(value) from tab может вернуть неожиданный результат Serializable – Читатели блокируют писателей – Писатели блокируют читателей – Читатели не блокируют читателей
6 Способы online агрегации данных Materialized view – не для репликации Все mview в TimesTen – обновляются сразу! Materialized views могут быть вложенные TimesTen ~ 300 tps, Oracle database ~ 3 tps
7 Механизмы интеграции Oracle database и TimesTen Read-only cachegroup Usermanaged cache group Synchronous cache group Asynchronous cache group Aging feature Passthrough feature DB link Oracle -> TimesTen
8 Организация хранения и индексирования данных In-line и out-of-line данные Добавление столбца = зло Два типа индексов: t-tree и хэш (хэш быстрее, но он только для pk) Статистика для CBO: количество уникальных значений и гистограммы Типы данных TT меньше Oracle Нет поддержки timestamp with local timezone
9 Тёмная сторона Datastore corruption за select Disconnect при сложных запросах Нет инструментов анализа производительности Хинты не удобные Особенности управления изменениями (блокировка sys.tables) Нет аналитических запросов Из инструментов работы с базой: ttISQL и плагин к SQL Developer Максимум 24 таблицы в одном запросе
10 Наши проекты Оптимизация отклика системы Противодействие мошенническим схемам Сбор данных с терминалов
11 Спасибо за внимание! Гранкин Михаил Заместитель директора департамента разработки
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.