实时流计算系统设计与实现
上QQ阅读APP看书,第一时间看更新

第2章 数据采集

从本章开始,我们将逐一讨论实时流计算系统各方面的内容。为了更加方便和清楚地阐述问题,本书将以互联网金融风控为场景,构建一个实时流计算风控系统。虽然是以互联网金融风控为场景,但大多数情形下实时流计算系统在架构上是大同小异的,或者具有异曲同工之妙。所以,本书在互联网金融风控场景下讨论的有关实时流计算系统的各种概念、问题和解决方法也能推广应用到其他使用场景。

常言道“巧妇难为无米之炊”,没有数据,我们就没有了讨论的基础。大多数情况下,数据采集是我们构建实时流计算系统的起点,所以本书将首先从数据采集讲起。事实上,我们不能小瞧数据采集的过程。数据采集通常涉及对外提供服务,涵盖许多I/O、网络、异步和并发的技术,在性能、可靠和安全等方面都不容大意。

本章将讨论实时流计算系统的数据采集部分,不过我们会将重心放在讲解有关BIO和NIO、同步和异步、异步和流之间的关联关系等内容。这些内容不仅有助于我们在实际生产中构建高性能数据采集服务器,而且有助于我们加深对异步和高并发编程的理解,并为后续章节对“流”的讨论和理解打下坚实基础。