# flink流处理架构

流数据：

* 永不停止、无尽的数据流
* 实时、低延迟的数据分析

传统的数据分析是采用中心化的数据库系统，存储事务性数据，使用SQL（或NoSQL）对历史数据进行分析：

* 数据不是经常更新的
* 数据分析所需的工作流程复杂而且缓慢
* 由于中心化数据存储，大量的应用程序访问数据库压力极大，导致响应缓慢；而采用缓存（Memcache之类）则难以保证数据的一致性
* 为了保证数据一致性，分布式数据库需要复杂的同步和异常处理机制，代价极大

**流处理架构降低了对大规模分布式数据一致性的要求，只需要维持本地数据的一致性。**

在流数据架构中，没有一个数据库来集中存储全局状态数据，而是共享永不停止的流数据，记录了业务数据的历史。在流数据架构中，每个应用程序都有自己的数据，并采用本地数据库或者分布式文件进行存储。

## 参考

* 「Flink基础教程」
