博客与发布
2023/03/10
Apache Beam 2.46.0
我们很高兴推出 Beam 的新版本 2.46.0。此版本包含改进和新功能。请查看 下载页面 以获取此版本的下载链接。
有关 2.46.0 中更改的更多信息,请查看 详细的版本说明。
亮点
- Java SDK 容器已迁移到 Eclipse Temurin 作为基础。此更改将迁移远离已弃用的 OpenJDK 容器。Eclipse Temurin 目前基于 Ubuntu 22.04,而 OpenJDK 容器基于 Debian 11。
- RunInference PTransform 将在 Python SDK 中接受模型路径作为 SideInputs。(#24042)
- RunInference 在 Python SDK 中支持 ONNX 运行时。(#22972)
- Python SDK 中用于 RunInference 的 Tensorflow 模型处理程序。(#25366)
- Java SDK 模块已迁移以使用
:sdks:java:extensions:avro
。(#24748)
I/Os
- 在 JmsIO 中添加了针对失败发布的重试策略(Java)。(#24971).
- Python SDK 添加了对文本文件的
LZMA
压缩/解压缩的支持。(#25316) - 将 ReadFrom/WriteTo Csv/Json 作为顶级转换添加到 Python SDK。
新功能/改进
- 为 Samza 可移植模式添加 UDF 指标支持。
- SparkRunner 选项,避免需要 SDF 输出才能适应内存。(#23852)。这有助于例如 ParquetIO 读取。通过添加实验
use_bounded_concurrent_output_for_sdf
来开启此功能。 - 添加
WatchFilePattern
转换,它可以用作 RunInference PTransfrom 的侧面输入,以使用文件模式监视模型更新。(#24042) - 添加对使用
PytorchModelHandler
加载 TorchScript 模型的支持。可以使用torch_script_model_path=<path_to_model>
将 TorchScript 模型路径传递给 PytorchModelHandler。(#25321) - Go SDK 现在需要 Go 1.19 才能构建。(#25545)
- Go SDK 现在有一个名为 Prism 的可移植 Beam 运行器的初始原生 Go 实现。(#24789)
- 有关更多详细信息和当前状态,请参阅 https://github.com/apache/beam/tree/master/sdks/go/pkg/beam/runners/prism。
重大更改
- 已弃用的 Spark 2 SparkRunner(见 2.41.0)已被删除。(#25263)。
- Python 的 BatchElements 在某些情况下执行更积极的批处理,默认情况下限制为 10 秒而不是 1 秒的批次,并在此计算中排除固定成本,以更好地处理固定成本大于 1 秒的情况。要获得旧的行为,可以将
target_batch_duration_secs_including_fixed_cost=1
传递给 BatchElements。
弃用
- 模块
beam-sdks-java-core
中已弃用与 Avro 相关的类,并将最终删除。请改用新模块beam-sdks-java-extensions-avro
,方法是从org.apache.beam.sdk.extensions.avro
包导入类。为了迁移的简单性,新模块中与 Avro 相关的类的相对包路径和整个类层次结构将保持与以前相同。例如,导入org.apache.beam.sdk.extensions.avro.coders.AvroCoder
类而不是org.apache.beam.sdk.coders.AvroCoder
。(#24749)。
贡献者列表
根据 git shortlog,以下人员为 2.46.0 版本做出了贡献。感谢所有贡献者!
Ahmet Altay
Alan Zhang
Alexey Romanenko
Amrane Ait Zeouay
Anand Inguva
Andrew Pilloud
Brian Hulette
Bruno Volpato
Byron Ellis
Chamikara Jayalath
Damon
Danny McCormick
Darkhan Nausharipov
David Katz
Dmitry Repin
Doug Judd
Egbert van der Wal
Elizaveta Lomteva
Evan Galpin
Herman Mak
Jack McCluskey
Jan Lukavský
Johanna Öjeling
John Casey
Jozef Vilcek
Junhao Liu
Juta Staes
Katie Liu
Kiley Sok
Liam Miller-Cushon
Luke Cwik
Moritz Mack
Ning Kang
Oleh Borysevych
Pablo E
Pablo Estrada
Reuven Lax
Ritesh Ghorse
Robert Bradshaw
Robert Burke
Ruslan Altynnikov
Ryan Zhang
Sam Rohde
Sam Whittle
Sam sam
Sergei Lilichenko
Shivam
Shubham Krishna
Theodore Ni
Timur Sultanov
Tony Tang
Vachan
Veronica Wasson
Vincent Devillers
Vitaly Terentyev
William Ross Morrow
Xinyu Liu
Yi Hu
ZhengLin Li
Ziqi Ma
ahmedabu98
alexeyinkin
aliftadvantage
bullet03
dannikay
darshan-sj
dependabot[bot]
johnjcasey
kamrankoupayi
kileys
liferoad
nancyxu123
nickuncaged1201
pablo rodriguez defino
tvalentyn
xqhu