Масштабування пакетної обробки
Концепції стримінгу
Mike Metzger
Data Engineer
Що таке масштабування?
Поліпшення
продуктивності
Обробка
швидше
Менше часу на той самий обсяг даних
Обробка
більше даних
Більше даних за той самий час
Вертикальне масштабування
Краще обладнання
Швидший CPU
Швидший IO
Більше пам'яті
Зазвичай
найлегший
тип масштабування
Мінімальна складність
Рідко вимагає змін у програмах чи алгоритмах
1
Images courtesy https://unsplash.com/@jeremy0
Мінуси вертикального масштабування
Властиво
обмежене
Може бути
дорогим
/ низький ROI
Прогрес індустрії
не гарантований
Горизонтальне масштабування
Розбиття
завдання на кілька частин
Більше комп'ютерів
Або більше CPU
Найкраще для
«надзвичайно паралельних»
задач
Їх легко розподілити між виконавцями
Дуже
економічно вигідно
Для певних процесів можливі
майже лінійні прирости швидкодії
Мінуси горизонтального масштабування
Складність
Потрібна платформа обробки (наприклад, Apache Spark або Dask)
Потрібні розвиненіша мережа
Постійне адміністрування
Може бути
дорогим
залежно від вимог
«Непаралельні»
задачі
Давайте потренуємось!
Концепції стримінгу
Preparing Video For Download...