Винников Олег. NET Developer
Почему NoSQL Особенности NoSQL решений Модели данных NoSQL Масштабирование MongoDB
Теорема CAP (Брюера)
Гибкая модель данных
Twitter – генерирует 2 Петабайта/год Twitter – генерирует 2 Петабайта/год Большие данные Google – обрабатывает 24 Петабайта/день Google – обрабатывает 24 Петабайта/день Facebook – 1.5 Петабайта фотографий Facebook – 1.5 Петабайта фотографий
MapReduce
Счет, пожалуйста! Enterprise – $/процессор Parallel DW– $/процессор Parallel DW– 11 серверов/22 процессора Enterprise $/сервер
Column Families Super Column FamilyColumn Column FamilyKey Space Users UserTweets Tweets
Асинхронная запись данных Асинхронная запись данных Отказоустойчивость при разделении Отказоустойчивость при разделении Решения поддержки согласованности Решения поддержки согласованности Слабая согласованность Слабая согласованность
Key – Value Databases Простейщая структура данных Простейщая структура данных Низкие задержки Низкие задержки Виртуальная память = хранилище Виртуальная память = хранилище
Типы : Строки, Списки, Хэши Типы : Строки, Списки, Хэши Собственная виртуальная подсистема Собственная виртуальная подсистема Устойчивость Устойчивость
Репликация Redis Клиент Мастер Слейв Чтение Слейв Запись Чтение
Документы (BSON), Коллекции Документы (BSON), Коллекции Отображение файлов в память Отображение файлов в память Индексы (внутренние, по массиву) Индексы (внутренние, по массиву) Агрегация (MapReduce) Агрегация (MapReduce)
Искусство масштабирования MongoDB
Сильная согласованность Клиент Слейв Запись Чтение Мастер Слейв
Слабая согласованность Клиент Мастер Слейв Запись Чтение
Шардинг – быстрый старт 1. Запустить сервер с метаданными и роутер 1. Запустить сервер с метаданными и роутер 2. Включить шардинг 4. Добавлять шарды 3. Выбрать ключ и колекцию для шардинга
Шардинг и репликация
Спасибо за внимание ! Skype : dinoh4 Twitter :