+ Обзор внутреннего устройства Hadoop и продуктов вокруг;
+ Как можно использовать для решения (спектр);
+ Как подходить к обоснованности использования даже в небольших проектах;
+ Hadoop в Badoo - история успеха;
+ Hadoop в Badoo - история проблем.
17. Hadoop в Badoo
Наше железо:
Кластер: 15 серверов
(16 CPU, 192Gb RAM, 10 disks 1Tb)
2 сервера подготовки данных
(12 CPU, 32Gb RAM)
18. Хранение данных
• 10 миллардов событий в день
• 600 Gb сжатых данных в день
• Файлов 1 400 000 — 50Tb
• Блоков 1 500 000
• Средний фактор репликации 2.75
• Все данные сжаты gzip/bzip/Snappy
19. Обработка данных
• Агрегация и фильтрация - Hive
• Расчет значений для TimeSeries - Spark
• Streaming — когда не Spark и не Hive
• Форматы: json, tab separated
20. Просто советы
• сжимайте данные (gzip / bzip2 / lzo)
• нарезайте на файлы
• размер файла ~ несколько блоков
• нарезайте директории по дням / часам
• не храните данных в пути файла
• бекапьте неймноду
• неймноду бекапьте
21. Чего не надо делать
• все на 1 сервере – только девел
• меньше 1 Гб памяти - много не сделать
• на 1 ядерных серверах - хранилище
• маленький проект - невыгодно
• разнос по датацентрам - нет (из коробки)
24. Просто советы 2
• Используйте форматы с которыми сможете работать и
без Hadoop (java haters)
• Восстановите данные из HDFS без java (java haters)
• Мониторьте состояние Hadoop
• tab separated — отличный формат, но не гибкий
• json stream — отличный формат, но не быстрый
• сsv — ужасный формат (отсутствие стандарта)
• Планируйте рост
• Hadoop - не production ready, но вполне стабилен
• Решайте задачи, а не внедряйте хадуп
• Читайте исходники, они лучше документации
25. Чего не надо делать
Нельзя кошек сушить в микроволновке
Нельзя не платить налоги
Нельзя облизывать электрические розетки
Нельзя пить воду из унитаза