PySpark 执行程序库何时会与驱动程序不同?
When would PySpark executor libraries be different than the driver?
我一直在关注 this guide(对 Medium post 表示歉意),它展示了如何为您的 Spark 执行程序和驱动程序单独打包 python 环境和库。什么时候您会期望每个库都需要不同的库?我认为一个简单但具体的例子会有所帮助。
想象这样一个场景,您需要在 spark 作业完成后向用户发送电子邮件作为通知,现在发送电子邮件的特定功能将始终在驱动程序上执行。 ,因此 smtplib
和相关库需要在驱动程序上可用,因为执行者不会发送电子邮件。
我一直在关注 this guide(对 Medium post 表示歉意),它展示了如何为您的 Spark 执行程序和驱动程序单独打包 python 环境和库。什么时候您会期望每个库都需要不同的库?我认为一个简单但具体的例子会有所帮助。
想象这样一个场景,您需要在 spark 作业完成后向用户发送电子邮件作为通知,现在发送电子邮件的特定功能将始终在驱动程序上执行。 ,因此 smtplib
和相关库需要在驱动程序上可用,因为执行者不会发送电子邮件。