分析代码工作簿Code repositories导出到代码仓库

注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

导出到代码仓库

可以将Python和SQL代码从Code Workbook导出到代码仓库。将代码移动到代码仓库对生产流水线非常有用,因为它提供完整的git版本控制和多个高级流水线工具。了解更多关于代码仓库的信息。

在导出时,将在仓库上创建一个新分支,Code Workbook代码将转换为其代码仓库等效代码。由于这是一个尽力而为的转换,您可能需要调整此代码以移动文件、更改数据集名称和路径、调整导入的包等。

导出是一次性的单向导出。对Code Workbook的进一步编辑不会自动推送到代码仓库,且不支持将相同数据集再次导出到相同仓库。代码无法从代码仓库导出到Code Workbook。此外,执行导出的用户必须在目标代码仓库中至少具有编辑者权限。

支持的类型

目前,仅支持具有Pandas或Spark数据框输入和输出的SQL节点或Python代码节点。导出的节点集必须相互连接,导入的数据集位于根节点。

不支持输入类型为Python变换输入或Object的节点。

在将您的代码导出到代码仓库之前,请确保代码仓库中支持所需的语言。例如,如果您同时导出SQL和Python节点,您可能需要在SQL专用或Python专用仓库中添加一个新的子项目。

如何导出

要导出,从Code Workbook中,转到设置齿轮 > Export to Code Repository Helper:

repository-export-button

点击选择仓库并选择一个代码仓库:

repository-selection

使用左侧面板中的复选框选择要导出的数据集。

图表显示哪些数据集可以导出(白色),哪些不可用(灰色)。导出必须是一个连接的图,因此添加节点到选择可能会使更多节点可供导出。悬停在禁用的节点上将解释为什么它们无法被选择。

repository-select-nodes

准备好导出后,点击创建拉取请求

在选定的代码仓库中将创建一个新分支,其中包含从Code Workbook导出的代码。点击“查看拉取请求”以在代码仓库中打开拉取请求。

repository-view-button

从这里您可以检查导出的代码,并进行所需的编辑,例如数据集路径和名称。

repository-view-export

验证在transforms-python/src/codeWorkbookExport中导出的数据集已按需导入并添加到您的流水线中 transforms-python/src/myproject/pipeline.py

repository-view-pipeline

Code Workbook中的任何自定义包版本将被添加到 transforms-python/conda_recipe/meta.yml

Code Workbook和代码仓库不支持完全相同的包集。虽然大多数包应能正常工作,但有些可能会出错无法通过仓库检查。

repository-view-packages

一旦准备就绪,可以创建PR并遵循通常的流程将导出的代码合并到流水线中。

写入相同的数据集

默认情况下,导出到代码仓库将写入新的数据集。如果您更希望写入与Code Workbook相同的数据集,请按照以下步骤操作:

  1. 导航到由导出到代码仓库操作在仓库中创建的分支。将输出数据集路径更改为所需数据集的路径。
  2. 对于每个数据集,导航到数据集页面的详情选项卡,删除数据集的任务规格。这是让仓库接管数据集所必需的。
  3. 创建PR并遵循通常的流程将代码合并到流水线中。当CI检查在仓库中运行时,将在目标数据集上创建新的任务规格。

请注意,通过将这些数据集转移到仓库中,**您将无法再使用原始的Code Workbook写入数据集。**您可能希望删除导出的节点以避免混淆。