Astronomer Cosmos v1.10.0a1预览版:全面拥抱Airflow 3时代
项目简介
Astronomer Cosmos是一个基于Apache Airflow的开源项目,专注于为数据工程团队提供现代化的数据编排解决方案。该项目特别强调与dbt(data build tool)的深度集成,帮助用户在Airflow环境中高效运行和管理dbt项目。通过Cosmos,数据团队可以将dbt的强大转换能力与Airflow的工作流调度完美结合。
核心更新解析
Airflow 3全面兼容
本次v1.10.0a1预览版最重要的特性是对即将发布的Airflow 3的全面支持。开发团队从多个维度进行了适配工作:
-
任务实例字段渲染重构:针对Airflow 2.x和3.x的不同API,重新设计了Rendered Task Instance Fields(RTIF)的处理逻辑,确保在不同版本间的兼容性。
-
异步执行模式增强:特别优化了BigQuery的延迟执行(ExecutionMode.AIRFLOW_ASYNC)在Airflow 3中的表现,充分利用新版本的异步特性提升任务执行效率。
-
DAG渲染机制升级:改进了DbtDag在Airflow 3环境下的渲染过程,使得复杂的数据转换工作流能够更稳定地在新版本中运行。
dbt依赖管理优化
针对大型dbt项目中依赖管理耗时的问题,本次更新引入了创新的增量依赖管理方案:
-
预定义包支持:新增了
copy_dbt_packages功能,允许用户将常用的dbt包预置在项目中,避免每次运行都重新下载。 -
智能依赖解析:在执行
dbt deps命令时,系统会智能判断哪些依赖已经存在,只下载新增或变更的依赖项,显著减少了项目初始化时间。
测试行为改进
修复了测试间接选择(test_indirect_selection)标志在TestBehavior.BUILD模式下无法正确传递的问题,确保了测试覆盖率的准确性,特别是在构建模式下运行选择性测试时。
技术深度解析
Kubernetes执行模式示例
为展示Cosmos在现代基础设施中的能力,新增了Kubernetes执行模式的示例。这一特性特别适合需要弹性扩展的数据处理场景,允许用户:
- 动态分配计算资源
- 实现任务级别的隔离
- 利用K8s的调度能力优化资源利用率
开发者工具增强
考虑到Airflow 3仍处于开发阶段,项目特别提供了:
- 专用开发工具集:简化了针对Airflow 3的开发测试流程
- 版本检查优化:在过渡期只检查主版本号,避免频繁的兼容性调整
- CI/CD改进:直接从主分支安装Airflow进行测试,确保与最新进展保持同步
质量保证措施
团队在代码质量方面采取了多项措施:
- 预提交钩子更新:加强了代码提交前的自动化检查
- OpenLineage事件处理:针对Airflow 3调整了事件完成标记的关联方式
- 示例DAG补充:新增了基础任务组(basic_cosmos_task_group)的符号链接,便于测试
总结展望
Astronomer Cosmos v1.10.0a1预览版展现了项目团队对技术前沿的快速响应能力。通过提前布局Airflow 3兼容性,优化核心的dbt集成体验,以及增强开发者工具链,为数据工程团队提供了面向未来的解决方案。特别值得一提的是增量依赖管理功能,这在大型dbt项目中将带来显著的效率提升。
随着Airflow 3正式发布的临近,Cosmos项目已经做好了充分准备,帮助用户平滑过渡到新一代的工作流调度平台。这一版本虽然标记为预览版,但其完成度和稳定性已经达到了相当高的水平,值得关注数据编排领域的技术团队提前评估和试用。
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C085
baihu-dataset异构数据集“白虎”正式开源——首批开放10w+条真实机器人动作数据,构建具身智能标准化训练基座。00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python057
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7GLM-4.7上线并开源。新版本面向Coding场景强化了编码能力、长程任务规划与工具协同,并在多项主流公开基准测试中取得开源模型中的领先表现。 目前,GLM-4.7已通过BigModel.cn提供API,并在z.ai全栈开发模式中上线Skills模块,支持多模态任务的统一规划与协作。Jinja00
agent-studioopenJiuwen agent-studio提供零码、低码可视化开发和工作流编排,模型、知识库、插件等各资源管理能力TSX0136
Spark-Formalizer-X1-7BSpark-Formalizer 是由科大讯飞团队开发的专用大型语言模型,专注于数学自动形式化任务。该模型擅长将自然语言数学问题转化为精确的 Lean4 形式化语句,在形式化语句生成方面达到了业界领先水平。Python00