Ohhnews

分类导航

$ cd ..
DZone Java原文

大型机上的 Apache Flink 流处理:天才创举还是矩阵故障?

#apache flink#大型机#流处理#ibm linuxone#金融科技

运行 Apache Flink 在大型机上听起来有些奇怪。一个现代流处理引擎,运行在大多数人称为“遗留系统”的平台上?但仔细看看。这不仅可能,对世界上一些最大的金融机构来说,甚至可能是一步妙棋。本文将探讨为什么一些企业希望在大型机上运行 Apache Flink,它如何实现,以及这究竟是一项卓越创新,还是一条技术弯路。

[LOADING...]

免责声明:本博客中表达的观点和意见仅代表我个人,不一定反映我雇主的官方政策或立场。

到 203X 年,大型机仍将举足轻重!

几个月前,我写过关于将 Apache Kafka 与大型机系统集成的文章。那篇博客涵盖了各行业中的多个真实案例。关键信息是:大型机仍在使用。在许多组织中,它们不会消失。它们仍然是 IT 战略的核心部分,尤其是在银行、保险和公共部门。但它们并不只是遗留系统。像 IBM z17 这样的现代大型机搭载最新的 Telum II 处理器,并支持高达 64 TB 的系统内存。z17 支持非常大规模的内存工作负载,并为分析和实时用例提供更快的处理能力。这些系统还集成了片上 AI 加速和可选的面向 AI 的硬件,以支持机器学习,并直接在关键任务数据所在之处进行实时决策,同时还能运行现代 Linux 环境和容器平台。

有些公司仍然留在大型机上,是因为它们不容易迁移。但许多其他公司并不想离开。相反,它们围绕大型机进行现代化改造。Apache Kafka 和 Flink 在这一旅程中发挥关键作用。它们打造了实时数据基础,将核心系统与跨环境的现代应用连接起来。在未来的混合云战略中,这一点甚至更加关键。Kafka 充当中央神经系统,在本地大型机与基于云的 AI 服务之间,在正确的时间传递正确的数据和上下文,包括代理式 AI 和大语言模型。采用混合流复制的事件驱动架构,可确保业务关键决策基于最新、可靠且具有上下文的信息。

大型机迁移并未发生

随便问问银行业任何一位架构师或 CTO。大型机迁移已经在路线图上存在了二十多年。核心系统的全面替换仍然很少见。然而,重要的是区分迁移卸载

大型机迁移意味着彻底关闭大型机工作负载,并将所有应用和数据迁移到新平台。原因有很多:

  • 风险过高
  • 组织阻力很大
  • 仍然需要大型机技能,但相关人才很难找到
  • 系统复杂且深度集成
  • 这些应用运行可靠,性能良好

另一方面,大型机卸载则常见得多。它意味着将选定的工作负载、查询或处理任务从大型机迁移到更灵活、更可扩展的平台。这降低了大型机的负载和成本,同时使创新可以在其他地方发生。我分享过几个卸载实践的真实案例,使用 Kafka、IBM MQ 以及 IBM IIDR 或 Precisely 等变更数据捕获(CDC)工具,实时同步和复制大型机系统与云或分布式基础设施之间的数据大型机卸载与集成示例

因此,许多公司选择大型机集成以及利用 Strangler Fig 设计模式进行缓慢搬迁,而不是直接迁移。Kafka 已经在发挥作用。Flink 是下一步。

Apache Flink 遇上大型机:看似不搭的组合,却有真实潜力

乍看之下,Apache Flink 和大型机似乎是来自两个不同世界的技术。但将二者结合,可能释放出意想不到的价值。

什么是 Apache Flink?

Apache Flink 是领先的开源流处理引擎。它旨在连续、实时地处理海量数据,而不是按批次处理。Flink 被广泛用于支持欺诈检测、客户个性化、运营监控和大规模数据转换等用例。许多大型科技公司和数字原生企业依赖 Flink,以低延迟和高吞吐量每天处理数十亿个事件。它既支持事件流,也支持批处理工作负载,但其真正优势在于实时用例。

下面是一个连续利用 Apache Flink 与 OpenAI 实现实时生成式 AI 的流处理示例:

Flink 为现代环境而构建。它原生运行在 Kubernetes 上,与 Apache Kafka 集成以实现实时数据摄取,并且通常部署在公有云、私有云或混合架构中。这使其非常适合希望基于最新且具有上下文的数据构建快速、智能应用的企业。

如何在大型机上运行 Apache Flink?

是的,Apache Flink 可以在大型机上运行。事实上,它已经在运行了。我已经在实际环境中见过这种部署。一家大型全球金融机构正准备投入巨资,扩大其对 Apache Flink 的使用。 在 IBM LinuxONE 上运行 Flink 是该战略的核心部分。这绝不是实验室实验,而是一项以生产为重点的举措。这家银行已经在生产环境中使用 Kafka 和 Flink。现在,他们希望将 Flink 计算工作负载迁移到大型机上。原因很简单:他们在 LinuxONE 上已经有未使用的计算资源。对某些公司而言,在那里运行 Flink 比扩展其他系统更便宜、也更容易扩展。其架构是现代化的。

IBM LinuxONE 运行 OpenShift。IBM LinuxONE 是一台基于 IBM Z 架构构建的高性能企业级服务器。它旨在以极高的可靠性、可扩展性和安全性运行 Linux 工作负载。与专注于 COBOL 和传统应用的传统大型机不同,LinuxONE 针对现代 Linux 应用进行了优化。Flink 部署在 OpenShift 的 Kubernetes 基础设施中的容器里,就像在任何其他云或数据中心中一样。从技术角度看,要在 IBM LinuxONE 上运行 Apache Flink,你需要为 s390x 架构构建 Docker 镜像。此外,像 Flink 中用作状态后端的 RocksDB 这样的组件,也必须针对 s390x 编译,以确保完整功能。

为什么要把 Apache Flink 放到 IBM 大型机上?

这是一个非常合理的问题!没有人会仅仅为了运行 Flink 而购买大型机。然而,对于已经拥有并运营大型机基础设施的组织来说,这种方式有几个好处:

  • 大型机上可用的计算资源
  • 直接消费来自大型机数据源的数据(例如 IBM MQ 或其他集成接口),并直接在大型机上处理;或者消费来自外部数据源的数据,例如运行在 x86 基础设施上的 Kafka 集群,从而实现跨混合环境的灵活集成。
  • 与新增外部 x86 服务器和双向集成管道相比,硬件和许可成本方面的总体拥有成本(TCO)更低
  • 在单一且熟悉的环境中简化运维
  • 受益于 IBM 积极推广 LinuxONE,并推动更多工作负载进入该平台

大型机不仅仍然存在它们还在增长。IBM 的基础设施业务(包括大型机)表现非常好。2025 年第三季度,IBM 报告基础设施部门收入为36 亿美元。这是 17% 的增长。仅 IBM Z 就增长了 61%。2025 年第二季度,基础设施收入为 41.4 亿美元,远超预期。这并不是衰退中的传统技术,而是一个正在转型的平台。

流处理与大型机的新篇章

Apache Flink 在大型机上运行,起初可能听起来不寻常,但它反映了企业思考现代化方式的更广泛转变。大型机不只是需要被替换的传统系统。IBM 大型机可以适应混合云战略,尤其是在银行和保险等高度监管的行业。Apache Flink 带来实时智能。大型机带来性能、可靠性和无与伦比的安全性。两者结合,为构建快速、具上下文且关键任务型应用提供了强大的组合,而无需放弃现有基础设施。以 Kafka 为骨干,以 Flink 作为实时处理引擎,组织可以将大型机系统与云创新连接起来,包括高级 AI 工作负载。这不仅仅是为了保留过去,而是为了扩展和复用可信系统,以满足未来的需求。拥抱这一模式的企业可以降低风险、提高敏捷性,并从其运营核心中释放新的价值。

DZone 贡献者表达的观点仅代表他们自己。