Комментарии 2
Из статьи остался непонятным следующий момент.
До Ливи проблемой было прокинуть спарк-контекст между операторами Эйрфлоу. Теперь, получается, у нас есть некая Ливи-«сессия», внутри которой у нас живет информация в т.ч. о спарк-контексте. Однако непонятно, как теперь эта инфа прокидывается от оператора к оператору. Или сессия живет на датанодах сама по себе, и в коде каждого оператора к ней нужно подключаться?
До Ливи проблемой было прокинуть спарк-контекст между операторами Эйрфлоу. Теперь, получается, у нас есть некая Ливи-«сессия», внутри которой у нас живет информация в т.ч. о спарк-контексте. Однако непонятно, как теперь эта инфа прокидывается от оператора к оператору. Или сессия живет на датанодах сама по себе, и в коде каждого оператора к ней нужно подключаться?
0
В-целом Вы верно поняли, чуть уточню: Ливи "инжектит" python код в driver, он там и исполняется (со всеми вытекающими). Очень похоже на jupyter — с помощью Ливи мы "добрасываем" операторы в конец нашего кода.
На "драйвере" живет сессия, сами данные (dataframe-ы) живут в worker-ах, их жизнью управляет Spark и они доступны в Spark-программе по именам (как обычно).
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Livy — недостающее звено цепи Hadoop Spark Airflow Python