提问者:小点点

在Database ricks Connect和本地Spark环境之间切换


DBConnect真的很棒,因为我能够在实际数据所在的集群上运行我的代码,所以它非常适合集成测试,但我也希望能够在开发和单元测试期间(pytestwithpytest-park),简单地使用本地Spark环境。

有没有办法配置DBConnect,所以对于一个用例,我只是使用本地Spark环境,但对于另一个用例,它使用DBConnect?


共1个答案

匿名用户

我的2美分,因为我已经做了几个月这种类型的开发了:

  • 使用两个Python的环境:一个安装了数据库连接(因此没有安装pyspark),另一个只安装了pyspark。当你想执行测试时,只需激活“本地”虚拟环境并像往常一样运行pytest。正如一些评论者指出的那样,确保你正在使用SparkConf(). setMaster(“本地”)初始化pyspark会话。
  • 在开发过程中,Py魅力对环境之间的切换有很大的帮助。默认情况下,我总是在“本地”venv上,但是每当我想使用数据库连接执行某些事情时,我只需从菜单中创建一个新的运行配置。简单的peisy。

此外,请注意一些数据库连接的限制:

  • 它不再受到官方支持,Database ricks建议尽可能转向dbx。
  • UDF在数据库连接中不起作用。
  • Mlflow集成不可靠。在我的用例中,我可以下载和使用模型,但无法使用数据库跟踪uri记录新实验或跟踪模型。这可能取决于您的数据库运行时、mlflow和本地Python版本。