Top big data architecture patterns by Igor Chub
-
Upload
net-user-group-dnipro -
Category
Technology
-
view
632 -
download
1
description
Transcript of Top big data architecture patterns by Igor Chub
![Page 1: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/1.jpg)
Шаблоны проектирования масштабируемых
систем.
Январь 2013Игорь ЧубАрхитектор, компания Максимайзер
![Page 2: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/2.jpg)
Факты о Максимайзере MVT, персонализация, сегментация,
Web аналитика.
1-е место в Великобритании.
7 миллиардов HTTP запросов в месяц.
500 миллионов уникальных пользователей в месяц.
![Page 3: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/3.jpg)
Факты о Максимайзере
Экспоненциальный рост числа клиентов и объемов данных.
300 ms SLA на время ответа HTTP сервера.
Десятки серверов по всему миру.
Интерактивные Ad-Hoc репорты.
![Page 4: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/4.jpg)
План доклада
• Что такое Big Data?• Big Data: типы нагрузок.• Big Data: архитектурные
шаблоны.• Практические советы.
![Page 5: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/5.jpg)
Что такое Big Data?
90% всех данных создано в 2011-12гг
2,200,000 TB создается ежедневно
К 2015 будет создано 8,000,000,000 TB = 8 ZB =
18,000,000 Библиотек Конгресса США
Увеличение IP трафика в 4 раза
![Page 6: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/6.jpg)
Что такое Big Data?
![Page 7: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/7.jpg)
Что такое Big Data?
![Page 8: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/8.jpg)
Что такое Big Data Уровень развития различных
технологий Big Data представлены в отчете Gartner “Hype Cycle for Big Data 2012” http://whatsthebigdata.com/2012/08/16/gartners-hype-cycle-for-big-data/
![Page 9: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/9.jpg)
Big Data: slashdot эффект Топ 1000 сайтов по объему трафика
http://www.google.com/adplanner/static/top1000/#
#1 Facebook – 380,000 rps #2 Youtube – 38,000 rps #29 LinkedIn – 965 rps #84 Odnoklassniki.ru – 5000 rps Будьте готовы к Slashdot/хабра
эффекту!
![Page 10: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/10.jpg)
Big Data: типы нагрузок
Запрос-ответ
![Page 11: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/11.jpg)
Big Data: типы нагрузок Обработка потоков событий в реальном
времени
![Page 12: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/12.jpg)
Big Data: типы нагрузок Работа с графами
![Page 13: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/13.jpg)
Big Data: типы нагрузок
Иголка в стоге сена
![Page 14: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/14.jpg)
Bid Data: типы нагрузок Индексирование текста
![Page 15: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/15.jpg)
Big Data: типы нагрузок
Аналитические отчеты
![Page 16: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/16.jpg)
Big Data: типы нагрузок Неструктурированные данные
![Page 17: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/17.jpg)
Big Data: типы нагрузок
Запрос-ответ
Обработка потоков данных
Обработка графов
Иголка в стоге сена
Индексирование текста
Аналитические отчеты
Неструктурированные данные
![Page 18: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/18.jpg)
Big Data: архитектурные шаблоны.
Как хранить МНОГО данных? Как их обрабатывать БЫСТРО? Что ДЕЛАТЬ с собранными
данными?
![Page 19: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/19.jpg)
Big Data: архитектурные шаблоны.
Распределенное хранение Параллельная обработка Асинхронность Offline обработка Кеширование
![Page 20: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/20.jpg)
Big Data: архитектурные шаблоны. LB+Shared Nothing Nodes
Примеры: stateless Web farms, parallel processing, distributed databases and caches, DFSs, CDN.
Плюсы: простота реализации, клиенты знают только о LB, ноды независимы.
Минусы: LB – узкое место и точка отказа, привязка пользователя к ноде с данными.
![Page 21: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/21.jpg)
Big Data: архитектурные шаблоны. LB + Stateless Nodes +
Scalable Storage Examples: Web farms,
parallel processing. Pros: бизнес логика
масштабируется отдельно от данных, минимум точек отказа
Cons: сессия пользователя должна храниться в хранилище.
![Page 22: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/22.jpg)
Big Data: архитектурные шаблоны. P2P
Examples: Torrent, Cassandra, Skype, WCF P2P.
Pros: масштабируемость, отказоустойчивость, автоконфигурирование
Cons: безопасность, сетевые штормы, сложный мониторинг, нестабильная производительность, сложный алгоритм роутинга.
![Page 23: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/23.jpg)
Big Data: архитектурные шаблоны.
Очередь сообщений Пример: Twitter. Pros: масштабируемость
приложений, ускорение синхронных запросов, QoS, сглаживание пиков, гибкие коммуникационные шаблоны, слабая связанность приложений.
Cons: центральный брокер, сообщения нетипизированы
![Page 24: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/24.jpg)
Big Data: архитектурные шаблоны.
![Page 25: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/25.jpg)
Big Data: архитектурные шаблоны.
Data Distribution Service Mission-critical, ultra low
latency, high bandwidth. Pros: те же что у
очереди + отсутствие центрального брокера, типизированные данные, латентность
Cons: специализированные сетевые протоколы
![Page 26: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/26.jpg)
Big Data: архитектурные шаблоны.
Map Reduce Используется на
большинстве крупных сайтов для офлайн обработки.
Pros: масштабируемость
Cons: латентность, сложность алгоритмов, поддержка кода
![Page 27: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/27.jpg)
Big Data: архитектурные шаблоны.
In memory обработка потока данных
CEP, ESP – MS StreamInsight, NEsper, Storm.
Pros: Mapreduce в реальном времени, выявление патернов
Cons: ограниченное временное окно
![Page 28: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/28.jpg)
Big Data: архитектурные шаблоны.
Распределенный кеш Memcache, Redis,
AppFabric, NCache. Pros: разгрузка DB,
быстрый ответ Cons: инвалидация
кеша, consistency!
![Page 29: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/29.jpg)
Big Data: архитектурные шаблоны.
Content Delivery Network (CDN)
Pros: разгрузка файл-серверов, быстрый ответ в любом регионе
Cons: стоимость, публичный доступ к файлу
![Page 30: Top big data architecture patterns by Igor Chub](https://reader035.fdocument.pub/reader035/viewer/2022081401/5589e870d8b42ac7378b45e9/html5/thumbnails/30.jpg)
Практические советы• Проанализируй оси развития системы.• Разделяй по компонентам с учетом осей.• Избегай глобальной координации. • Масштабируй конфигурирование системы.• Стоимость с учетом масштаба.• Планируй обновление “железа” на этапе
проектирования.• Масштабируемость сети.