注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。
Foundry 提供三种产品以进行基于代码的数据变换:代码工作簿、代码工作区和代码存储库。虽然这些产品之间存在某些功能重叠,但每种产品都针对不同的工作流程和用户类型。以下指南旨在帮助您确定哪种工具最适合您的需求。
代码存储库 推荐用于创建稳健的生产管道和支持需要额外治理和审查层的工作流程。通过代码存储库,数据工程师可以批量创建高效的管道。适合代码存储库的示例工作流程包括:
代码工作区 推荐用于使用 JupyterLab® 和 RStudio® Workbench 进行快速高效的探索性分析,将熟悉的 IDE 与 Foundry 平台的优势结合在一起,如数据安全性、分支、搭建调度和资源管理。适合代码工作区的示例工作流程包括:
代码工作簿 推荐用于对大规模数据进行基于代码的分析,这些数据不适合代码工作区。此类分析可以是一次性使用,也可以生成定期更新的成果。代码工作簿还可以用于原型设计管道,然后可以提升到存储库。适合代码工作簿的示例工作流程包括:
代码存储库 | 代码工作区 | 代码工作簿 | |
---|---|---|---|
特性 | 高级管道 | 探索性分析 | 高级分析 |
支持在长期数据管道中实现复杂工作流程,具有性能优化和代码生成的灵活性。 | 利用熟悉的 IDE 实现互动式探索性工作流程,与 Foundry 原语结合。 | 支持常用分析语言和可视化库的数据分析工作流程。 | |
支持的语言 | Python, SQL, Java, Mesa | Python, R | Python, R, SQL |
支持的环境 | 所有环境 | 仅 Kubernetes 环境 | 所有环境 |
批处理管道支持 | 是 | 是 | 是 |
增量计算 | 是 | 否 | 否 |
变换生成 | 是 | 否 | 否 |
多输出变换 | 是 | 是 | 否 |
文件系统访问 | 是 | 是 | 是 |
可视化支持 | 否 | 是 | 是 |
迭代周期 | 迭代代码逻辑 | 迭代数据发现和分析 | 迭代洞察生成 |
设计用于帮助迭代代码逻辑。运行时调试器和预览可以协助验证变换逻辑。搭建后可以在 Foundry 中分析数据。 | 设计用于快速迭代数据发现和分析,使用广为人知的工具与 Foundry 其他部分无缝集成。 | 设计用于从数据中生成洞察;所有变换都在完整的输入数据上运行,交互式控制台支持临时查询,Spark 执行模型优化用于快速迭代。 | |
完整数据预览 | 预览数据样本,并能够预筛选输入样本 | 完整数据预览 | 完整数据预览 |
调试器 | 是 | 否 | 否 |
控制台支持 | 调试模式下 | 是 | 是 |
Spark 模块管理 | 在任务级别启动 Spark 模块 | 快速反馈循环的无 Spark 环境 | 为即时交互保持 Spark 模块处于温热状态,并在工作簿级别启动 |
操作 | 数据管道管理 | 数据探索管理 | 数据分析管理 |
支持 Foundry 数据管理库和发布自定义 Python 库 | 完全可调环境,能够使用 pip、CRAN 和 conda 库,包括从代码存储库发布的库 | 能够使用从代码存储库发布的自定义库;用户可以将逻辑片段保存为代码模板,从而实现其他用户的点选分析。 | |
数据期望 | 是 | 否 | 否 |
发布自定义库 | 是 | 否 | 否 |
使用自定义库 | 是 | 是 | 是,在某些环境中 |
点选代码模板 | 否 | 否 | 是 |
变更管理 | 治理 | 灵活性 | 快速变更 |
优先考虑变更可追溯性和治理,以确保关键管道保持安全和稳健;高级审核和审批工作流程以及完整的变更日志。 | 优先考虑快速和灵活的迭代,支持完整的分支和自动 Git 版本控制。 | 优先考虑快速迭代和协作,具有轻量级分支工作流程;不需要 CI 检查或单元测试。 | |
完整 Git 工作流 | 是 | 是 | 否 |
合并后复制数据 | 否 | 否 | 是 |
管理和删除安全权限标记 | 是 | 否 | 否 |
影响分析视图 | 是 | 否 | 否 |
高级代码审核工作流程 | 是 | 否 | 否 |
单元测试 | 是 | 否 | 否 |
JupyterLab® 是 NumFOCUS 的注册商标。 RStudio® 是 Posit™ 的商标。