我是一位为Apache Spark编写(独立)应用程序的Java开发人员。为了创建工件,我使用Gradle和ShadowJar插件。用于Python的构建过程工具
一些队友想要使用Python。目前,他们使用JetBrains PyCharm编写这些Python脚本,并在Spark集群环境中远程执行它们。但是,这个过程并不能很好地扩展(如果涉及多个文件,该怎么办?),我正在寻找Python生态系统中的解决方案。一个问题是,我和我的一个团队成员都不是Python专家(实际上其他团队成员不是开发人员,但必须编写代码,管理决策......),所以我们没有任何线索是什么Python开发的最佳实践。
我试过PyGradle,但它感觉并不顺畅,特别是Apache Spark。我绊倒了像Pip,Pex,Setuptools,VirtualEnv这样的名字。这些工具是什么?他们如何互相干扰?
为了防止X-Y问题:我想要一个可以构建,(单元)测试并使用一个命令(如gradle build)打包的代码库。产生的工件应该能够在Spark群集上部署和执行。