Amazon Kinesis是个用于大规模数据实时处理的完全托管服务。不管你是建立一个从远端传感器中收集数据的系统,还是打造一个在多个不同服务器上做日志收集的应用程序,亦或是建立最新的物联网(IoT)解决方案,Amazon Kinesis都可以满足你每个小时从成千上万个不同数据源收集和处理TB级数据的需求。 对于许多这样的系统来说,数据产生的位置对用户来说非常重要。举个例子,从一个远端传感器中发射出的警报不会起到太大的作用,除非用户可以弄清楚事件发生的地点。对于用户来说,地理数据可视化上,在地图上绘制图形是最有效的方法。通过本文,我们将展示如何使用Amazon Kinesis建立一个支撑地理标记流数据的系统,并附上了两个简单的数据可视化方法,它们可以让用户快速读懂这些信息。第一个可视化绘制在一个地球仪上,对小规模事件显示非常有效:
第二个可视化可以应对更多规模数量的事件,它将绘制一段时间上事件的热点图。
下图是系统的架构概览。其中,数据生成者将数据推送给Amazon Kinesis。随后,Amazon Kinesis将处理这些信息,而相关的地理信息则存储在一个Amazon ElastiCache Redis Cluster上,运行在Elastic Beanstalk上的node.js 网络服务器将负责这些数据的可视化。
整个系统使用Java和JavaScript编码,但是不用担心开发环境不支持这些语言的情况;我们所有的代码都将使用Amazon Elastic Compute Cloud编译。 |