前言:
实时计算必将在越来越多的业务场景下得以应用,故而有意学习一番。主要参考《Storm分布式 实时计算模式》一书第1章节《分布式单词记数》。
一、要做的事
像mapreduce程序练手时常常用会word count 来演示,这里也用这个需求来演示storm实时计算。即是说,有一个消息源会源源不断地产生一些句子,然后最终的输出结果是所有句子中每个单词的词频统计。
本文中,我们开发一个本地模式的storm程序,并在IDE中编译运行,以形成对storm结构、主要思想的领会。
二、storm程序的框架
这张图就是精髓了! 我们的storm程序中,将会依次包含上述几种对象,spout是消息产生源头,会源源不断地发送消息给出bolt. 每个bolt对象可以定义若干计算逻辑,就相当于spark中的一种算子一样。在下面的案例程序中,每个对象都将对应有一个类文件。
要实现本文目标,我们的思路是: 产生句子(由spout实现) -> 分词(由bolt实现) -> 词频统计(由bolt实现) -> 报告数据(由bolt实现)

本文介绍了如何使用Storm进行实时计算,通过模拟Word Count案例,展示了Storm的结构和主要组件。首先,创建一个本地模式的Storm程序,包括Spout产生句子,Bolt进行分词和词频统计。开发环境使用IntelliJ IDEA,通过Maven配置相关依赖,并导入Storm的JAR包。案例代码包括SentenceSpout和Bolt的实现,帮助初学者理解Storm的工作原理。
最低0.47元/天 解锁文章
972

被折叠的 条评论
为什么被折叠?



