19
«Преимущества NoSQL баз данных на примере MongoDB» Винников Олег .NET Developer

No sql.mongodb scaling

  • Upload
    -

  • View
    396

  • Download
    0

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: No sql.mongodb scaling

«Преимущества NoSQL баз данных на примере MongoDB»

Винников Олег

.NET Developer

Page 2: No sql.mongodb scaling

Почему NoSQL

Особенности NoSQL решений

Модели данных NoSQL

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

Page 3: No sql.mongodb scaling

Теорема CAP (Брюера)

Page 4: No sql.mongodb scaling

Гибкая модель данных

Page 5: No sql.mongodb scaling

• Twitter – генерирует 2 Петабайта/год

Большие данные

• Google – обрабатывает 24

Петабайта/день• Facebook – 1.5 Петабайта фотографий

Page 6: No sql.mongodb scaling

MapReduce

Page 7: No sql.mongodb scaling

Счет, пожалуйста!

Enterprise – 27.500$/процессорParallel DW– 38.500$/процессорParallel DW– 11 серверов/22 процессора

Enterprise - 8.500$/сервер

Page 8: No sql.mongodb scaling

Column Families

Super Column Family

Column Column Family Key Space

Users

UserTweets

Tweets

Page 9: No sql.mongodb scaling

• Асинхронная запись данных

• Отказоустойчивость при разделении

• Решения поддержки согласованности

• Слабая согласованность

Page 10: No sql.mongodb scaling

Key – Value Databases

• Простейщая структура данных

• Низкие задержки

• Виртуальная память = хранилище

Page 11: No sql.mongodb scaling

• Типы : Строки, Списки, Хэши

• Собственная виртуальная

подсистема• Устойчивость

Page 12: No sql.mongodb scaling

Репликация Redis

Клиент

Мастер

Слейв Слейв

Чтение

Слейв Слейв

Запись

Чтение

Чтение

Page 13: No sql.mongodb scaling

• Документы (BSON), Коллекции

• Отображение файлов в память

• Индексы (внутренние, по массиву)

• Агрегация (MapReduce)

Page 14: No sql.mongodb scaling

Искусство масштабированияMongoDB

Page 15: No sql.mongodb scaling

Сильная согласованность

Клиент Слейв

Слейв

Запись

Чтение

Мастер

МастерСлейв

Page 16: No sql.mongodb scaling

Слабая согласованность

Клиент

Мастер

Слейв

Слейв

Запись

Чтение

Чтение

Чтение

Page 17: No sql.mongodb scaling

Шардинг – быстрый старт

1. Запустить сервер с метаданными и

роутер2. Включить шардинг

4. Добавлять шарды

3. Выбрать ключ и колекцию для

шардинга

Page 18: No sql.mongodb scaling

Шардинг и репликация

Page 19: No sql.mongodb scaling

Спасибо за внимание !

Skype : dinoh4

Twitter : https://twitter.com/VinnikovOleg