Артем Маринов "Сегментируем 600 млн. пользователей в...
TRANSCRIPT
Что такое Facetz DMP
• Data Management Platform • 600 млн пользователей
• Data Management Platform • 600 млн пользователей
5.5 млрд / сутки
Что такое Facetz DMP
• Прямые установки пикселя
• Поток данных от партнеров
• Оффлайн выгрузки DMP
Механизмы получения данных
Ключевые показатели
• Горизонтальная масштабируемость
• Оценка объема аудитории
• Удобство мониторинга и разработки
• Хорошая скорость реакции на события
Как было раньше
Как было раньше
Loader
Как было раньше
Loader
Analytic Engine
statistics
Partners
Ключевые показатели
• Горизонтальная масштабируемость
• Оценка объема аудитории
• Удобство мониторинга и разработки
• Хорошая скорость реакции на события
Ключевые показатели
• Горизонтальная масштабируемость
• Оценка объема аудитории
• Удобство мониторинга и разработки
• Хорошая скорость реакции на события
Ключевые показатели
• Горизонтальная масштабируемость
• Оценка объема аудитории
• Удобство мониторинга и разработки
• Хорошая скорость реакции на события
Чего мы хотим?
• Писать данные в HBase сразу
• Реагировать на события мгновенно
• Удобство мониторинга и разработки
Начинаем сегментировать сразу• готовимся к random read
• смена workload
• максимальная плотность хранения
Loaderbulk_load
Начинаем сегментировать сразу• готовимся к random read
• смена workload
• максимальная плотность хранения
• увеличиваем нагрузку
Loader
Segmentator
trigger
bulk_load
Начинаем сегментировать сразу
Loader
Segmentator
trigger
bulk_load
/ GOOGLEPartners
• готовимся к random read
• смена workload
• максимальная плотность хранения
• увеличиваем нагрузку
Kafka — прекрасный инструмент
• Topic — набор partition • Partition — файл(ы)
partition 1
partition 2
partition N
• Producers — пишут в конец • Consumer Group — независимы
partition 1
partition 2
partition N
Producers
• Topic — набор partition • Partition — файл(ы)
Kafka — прекрасный инструмент
• Producers — пишут в конец • Consumer Group — независимы
partition 1
partition 2
partition N
ProducersGroup AA: 7
A: 5
• Topic — набор partition • Partition — файл(ы)
Kafka — прекрасный инструмент
• Producers — пишут в конец • Consumer Group — независимы
partition 1
partition 2
partition N
ProducersGroup A
Group B
A: 7
A: 5
• Topic — набор partition • Partition — файл(ы)
B: 3
B: 8
Kafka — прекрасный инструмент
• Producers — пишут в конец • Consumer Group — независимы
partition 1
partition 2
partition N
ProducersConsumer A
• Topic — набор partition • Partition — файл(ы)
A: 7
A: 5 B: 3
B: 8 Group A
Consumer BGroup B
Kafka — прекрасный инструмент
Пишем данные в реальном времени
• подготовка к random write
Loader
Пишем данные в реальном времени
• подготовка к random write
• все пошло не так
• самомасштабированиеStream-loaderLoader
Боты — зло
Планы
• Утилизация ресурсов hadoop кластера
• Точные средства хранения статистики в потоке
• Различные оптимизации по CPU