Flink最佳实践(二)Flink流式计算系统
前言 在 Flink最佳实践(一)流式计算系统概述 中,我们详细讨论了流式计算系统中 时域、窗口、时间推理与正确性工具 等概念。 本文将以这些概念为基础,逐一介绍 Flink 的 发展背景、核心概念、时间推理与正确性工具、安装部署、客户端操作、编程API 等内容,让开发人员对 Flink 有较为全面的认识并拥有一些基础操作与编程能力。 一、发展背景 1.1 数据处理架构 在流处理器出现之前,数据处理架构主要由批处理器组成,其是对 无限数据的有限切分,具有 吞吐量大、数据较为准确 的特点。 然而我们知道,批处理器在时间切分点附近 仍然无法保证数据结果的真实性,且数据的时效性往往比较低,延迟大。 除了批处理之外,人们为了达到数据生成的高时效性,在数据处理架构中也常常使用微服务来解决,其特点是 延迟低、无状态、服务与存储分离。 但是微服务无状态的约束很大程度上决定了其并不能很好的应用于现代实时数据处理的需求中,比如准确一次的语义、乱序数据流的处理能力等,它无法满足人们对一个先进的流处理器的想象(在无状态的业务需求中,微服务仍然是最佳选择)。 而要满足人们的这些想象,数据处理架构恰恰需要有 「...