Лекции 2011
.pdfМасштабирование систем
7.25
Подходы к кластерному масштабированию
Replication
Масштабирование систем
7.26
Подходы к кластерному масштабированию
Sharding
Масштабирование систем
7.27
Подходы к кластерному масштабированию
In-Memory
Caching
Масштабирование систем
7.28
Подходы к кластерному масштабированию
In-Memory
Data Grid
Beyond RDBMS...
8.1
Гетерогенность данных
В рамках информационной системы данные гетерогенны Они различаются по:
-ценности (высокая/низкая)
-сроку жизни (постоянные данные/временные)
-формату(скалярное значение, структурированный документ, бинарный файл)
-строгости формата (возможность создания схемы/ отсутствие схемы)
Основные типы NoSQL DB
8.2
RDBMS
Поддержка ACID транзакций,
использование соединений(JOIN) на стороне сервера
key-value
get, put и delete операции на основе первичного ключа
column-oriented
Табличное представление без серверных JOIN c физическим представлением данных в виде столбцов
document oriented
Хранение структурированных документов(XML, JSON)
NoSQL DB Use Cases
8.3
Частая запись, редкое чтение(например web hit counter): key-value Redis в памяти, update-in-place документы в MongoDB
Бинарные файлы(PDF, MP3)
Amazon S3
Временные данные( краткосрочная статистика, вебсессии):
Временное хранилище Memcache
Необходимость репликации на мобильные устройства:
Реплицируемая CouchDB
Хранилище с высокой доступностью(availability):
Автоматически кластеризируемые Cassandra, Redis
Polyglot Persistence
8.4
Если различные задачи, удобнее выполнять в различных DBMS следует использовать сразу несколько DBMS
Пример информационной веб-системы
MySQL - low-volume, high-value данные (профили пользователей, финансовая информация).
MongoDB - high-volume, low-value данные (hit counters, logs).
Amazon S3 - хранение бинарных данных загружаемых пользователем(фотографии, медиаданные).
Memcached - хранение временных данных(temporal counters, rendered HTML).
CAP требования
8.5
Основные требования к ИС
Непротиворечивость(consistency):
Каждый клиент получает одинаковое представление актуальных данных
Доступность (availability):
Все клиенты могут проводить чтение и запись без дополнительных задержек
Устойчивость к сетевым сбоям(partition tolerance):
Система устойчиво работает даже при наличии сетевых сбоев.
Теорема CAP: Выбери два из трех.
CAP требования
8.6
by julian browne
N1, N2 - узлы сети
A, B - алгоритмы обработки
V0 (V1) - данные