分类
大数据

Flink的时间与watermarks详解

当我们在使用Flink的时候,避免不了要和时间(time)、水位线(watermarks)打交道,理解这些概念是开发分布式流处理应用的基础。那么Flink支持哪些时间语义?Flink是如何处理乱序事件的?什么是水位线?水位线是如何生成的?水位线的传播方式是什么?让我们带着这些问题来开始本文的内容。

分类
大数据

Flink的状态后端(State Backends)

当使用checkpoint时,状态(state)会被持久化到checkpoint上,以防止数据的丢失并确保发生故障时能够完全恢复。状态是通过什么方式在哪里持久化,取决于使用的状态后端。

可用的状态后端

  • MemoryStateBackend
  • FsStateBackend
  • RocksDBStateBackend

注意:如果什么都不配置,系统默认的是MemoryStateBackend

分类
大数据

Flink运行架构剖析

本文主要介绍 Flink Runtime 的作业执行的核心机制。首先介绍 Flink Runtime 的整体架构以及 Job 的基本执行流程,然后介绍Flink 的Standalone运行架构,最后对Flink on YARN的两种模式进行了详细剖析。

分类
Java

Flink:ElasticsearchSinkFunction is not serializable

用Java把Flink结果数据下沉到Elasticsearch,执行时执出ElasticsearchSinkFunction is not serializable异常:

The implementation of the provided ElasticsearchSinkFunction is not serializable. The object probably contains or references non-serializable fields.