azure - 什么是好的 Databricks 工作流程

标签 azure azure-databricks

我使用 Azure Databricks 以及笔记本和管道进行数据处理。

我对当前的工作流程不满意:

  • 在不中断生产的情况下无法修改生产中使用的笔记本。当我想要开发更新时,我会复制笔记本,更改源代码直到我满意为止,然后用新笔记本替换生产笔记本。
  • 我的浏览器不是 IDE!我无法轻松地转到函数定义。我有很多笔记本,如果我想修改甚至只是查看某个函数的文档,我需要切换到定义该函数的笔记本。
  • 有没有办法进行高效、系统的测试?
  • Git 集成非常简单,但这不是我主要关心的。

最佳答案

很好的问题。绝对不要就地修改您的生产代码。

一种推荐的模式是在工作区中为 dev-staging-prod 保留单独的文件夹。完成开发工作,然后在阶段中运行测试,然后最终升级到生产环境。

您可以使用 Databricks CLI 将笔记本从一个文件夹拉出或推送到另一个文件夹,而不会破坏现有代码。更进一步,您可以将此模式与 git 合并以与版本控制同步。无论哪种情况,CLI 都允许您以编程方式访问工作区,这将使更新生产作业的代码变得更加容易。

关于关于 IDE 的第二点 - Databricks 提供 Databricks Connect ,它允许您在集群上运行命令时使用 IDE。根据您的痛点,我认为这对您来说是一个很好的解决方案,因为它将使您更清楚地了解您定义的功能等。您还可以通过这种方式编写和运行单元测试。

一旦您准备好脚本,您就可以随时将它们作为笔记本导入工作区并将其作为作业运行。另请注意,您可以使用 REST API 将 .py 脚本作为作业运行。

关于azure - 什么是好的 Databricks 工作流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58822369/

相关文章:

azure - 什么是 LoggerExtension Args 参数以及如何与应用程序见解集成?

azure - 使用Azure Compute替换Win2008 IIS服务器?

Azure Databricks 作业通知电子邮件

azure - 将第二代数据湖存储与 databricks 连接

pyspark - 如何使用 Databrick 截断和/或使用通配符

python - Databricks - pyspark.pandas.Dataframe.to_excel 无法识别 abfss 协议(protocol)

azure - 资源所有者的行动组

azure - Terraform 输出多个子网 ID

php - Windows Azure 上的 PHP 社区在哪里?

pip - Databricks CLI 错误 databricks-connect' 无法识别