Netflix TechBlog | Medium на русском
Подписаться
Маэстро: оркестратор потоков Netflix
Маэстро, оркестратор потоков Netflix, является открытым исходным кодом и предназначен для масштабных потоков данных и машинного обучения. Он поддерживает как ациклические, так и циклические потоки, включая многократно используемые шаблоны, такие как циклы foreach, подпотоки и условные ветвления. Маэстро обеспечивает горизонтальную масштабируемость для управления большим количеством потоков и задач в рамках одного потока. Он предлагает гибкий формат определения потока в JSON, сочетающий пользовательские и управляемые Маэстро поля. Стратегии выполнения потоков Маэстро включают последовательный, строго последовательный, только первый, только последний и параллельный с ограничениями по параллелизму. Язык параметров и выражений Маэстро позволяет использовать динамические параметры, инъекцию кода и обмен состояниями между потоками и шагами. Кроме того, Маэстро включает в себя выходные параметры для вызываемых шагов и параметризированные потоки для гибкости и удобства управления. Маэстро также включает в себя общие строительные блоки, такие как поддержка foreach, подпотоки и условные ветвления, что позволяет легко определять поток данных и другие модели потоков.