闪电般的统一分析引擎

Versioning Policy

从Spark 1.0.0开始,Spark项目将遵循语义版本控制准则 ,但会有一些偏差. 这些小差异说明了Spark作为多模块项目的性质.

Spark Versions

每个Spark版本都会版本化: [MAJOR].[FEATURE].[MAINTENANCE]

  • 重要提示 :所有具有相同主要版本号的发行版都将具有API兼容性. 主要版本号将在很长一段时间内保持稳定. 例如,1.XY可能持续1年或更长时间.
  • 特点 :功能版本通常包含新功能,改进和bug修复. 每个功能版本都有一个合并窗口,可以在其中合并新的补丁程序;在质量保证窗口中,只有补丁可以合并时,然后是对候选版本进行投票的最后阶段. 这些窗口将在上一个功能发布后立即宣布,以便给人们足够的时间,并且随着时间的流逝,我们可能会使整个发布过程变得更加常规(类似于Ubuntu).
  • 维护 :维护版本的发布会更加频繁,并且取决于所引入的特定修补程序(例如,错误修复)及其紧迫性. 通常,这些版本旨在修补错误. 但是,更高级别的库可能会引入一些小功能,例如新算法,前提是它们是完全加性的并且与现有代码路径隔离. Spark core可能不会引入任何功能.

Alpha Components

将新组件添加到Spark后,它们最初可能会标记为" alpha". Alpha组件不必遵守上述准则,但是,应尽可能地尝试. 一旦标记为"稳定",就必须遵循这些准则.

API compatibility

API是Spark中公开的任何未标记为"开发人员API"或"实验性"的公共类或接口. 如果针对版本A 编译的代码可以针对B 干净地编译,则版本A与版本B兼容.当前,不保证针对版本A链接的已编译应用程序可以针对版本B干净地链接而无需重新编译. 链接级别的兼容性是我们将在以后的版本中努力保证的.

但是请注意,即使对于"开发人员API"和"实验性"功能,我们也会努力保持最大的兼容性. 如果计划以后再更改API,则不应将代码作为"实验性"合并到项目中,因为用户希望所有可用API都具有最大的兼容性.

Release Cadence

通常,功能("次要")版本大约每6个月发布一次. 因此,Spark 2.3.0通常在2.2.0之后约6个月发布. 维护版本根据需要在两个功能版本之间发生. 主要发布不会按照固定的时间表进行.

Spark 3.0 Release Window

Date Event
2019年10月下旬 预览版
2019年12月上旬 代码冻结. 释放分支剪切.
2019年12月下旬 质量检查期. 专注于错误修复,测试,稳定性和文档. 通常,没有新功能合并.
2020年1月 发布候选人(RC),投票等,直到最终发布通过

Maintenance Releases and EOL

通常,功能发布分支将通过错误修复版本维护18个月. 例如,在2019年2月2.3.0版本发布18个月后的2019年9月,分支2.3.x不再被认为保持不变.在那之后,即使修复了错误,也不应再发布2.3.x版本.

主要发行版中的最后一个次要发行版通常会作为" LTS"发行版保留更长的时间. 例如,2.4.0已于2018年11月发布,但可能会在2020年5月之后的18个月内发布.

by  ICOPY.SITE