首页 > 编程知识 正文

年终总结报告,个人总结

时间:2023-05-05 03:58:26 阅读:43847 作者:1475

jtorm是一个类似Hadoop MapReduce的系统,用户根据指定的界面实现任务,并将其传递给JStorm系统。 JStorm执行此任务,每7 * 24小时运行一次。 如果正在运行的工作器发生意外故障,调度程序将立即分配新工作器以替换无效的工作器

因此,从APP应用的观点来看,jstorm APP应用是遵守某一编程规范的分布式APP应用。 在系统上,JStorm是一个类似于MapReduce的调度系统。 从数据的角度看,JStorm是一种基于流水线的消息处理机制。

实时计算是目前大数据领域中最火爆的方向。 由于人们对数据的要求越来越高,实时性的要求也越来越高,传统的Hadoop MapReduce逐渐不能满足需求,因此在这一领域需求不断增长。

Storm组件和Hadoop组件对比

StormHadoop角色nimbusjobtrackersupervisortasktrackerworkerchild APP应用程序名称拓扑作业编程接口spout/bolt mapper/reducer 3333

逻辑上,一个Topology是由几个Spout (消息的发送者)和Bolt (消息的处理者)构成的图表结构

每个Spouts可以发送多个消息流。 要实现这种效果,请使用outfieldsdeclarer.declarestream定义多个流,然后使用SpoutOutputCollector发送指定的流。

Spout

的所有拓扑处理都在bolt中进行。 bolt可以是任何etl,包括过滤、函数、聚合、连接、写数据库系统和缓存。 一个bolt可以进行简单的事件流转换。 对于复杂的流转换,通常需要多个bolt参与。 这就是流计算,每个bolt可以进行一个业务逻辑处理,bolt可以向下游流动多个emit

Bolt中的主要方法是execute方法,每次处理一个输入的tuple,在Bolt中也可以发射新的tuple使用OutputCollector类,每次在Bolt中处理一个tuple时都可以使用ack meta Strom中的IBasicBolt接口将自动

呼叫确认。

优点在Storm和JStorm出现之前,市场上出现了很多实时计算引擎,但自从Storm和JStorm出现后,基本上可以说是统一江湖。 查明其优点:

开发非常迅速,接口简单,使用方便,只要遵守Topology、Spout和Bolt的编程规范,就能开发出扩展性极高的APP应用程序。 诸如底层RPC、工作器之间的冗馀、数据分流等操作完全不用考虑可扩展性的优势。 以一级处理单元的速度直接配置并行数,线性扩展性能强且结实。 如果工作器故障或机器故障时对精度有进一步要求,则采用事务机制,保证数据的准确性。 应用场景JStorm处理数据的方式是基于消息的流水线处理,因此,特别是bolt(即计算单元依赖的所有数据)可以在接收到的消息中找到,而在一个数据流中找到

因此,经常使用

适合无状态计算管道系统。 将数据从一个系统传输到另一个系统。 例如,将数据库与Hadoop消息转换器同步,将收到的消息转换为一种格式,并将其存储在另一个系统(如消息中间件统计分析器)中。 从日志或消息中提取某个字段,进行count或sum计算,最后将统计存储在外部的中间处理过程可能更复杂。 实时推荐系统在jstorm上运行推荐算法,达到秒级推荐效果

日志分析,从日志中分析出特定的数据,并将分析的结果存入外部存储器如数据库。目前,主流日志分析技术就使用JStorm或Storm

在实际应用中,一般会通过spout与其他系统集成,例如RocketMQ这样的消息队列。对于处理完成的数据,也可以选择输出到db或在bolt中直接导向其他系统做进一步处理

(召回的一环也称为匹配的一环,是从大量商品库中得到的候补商品的集合) ) )。

第一,JStorm实时收集用户行为日志,并定期更新基于item的协同过滤内容。

第二,通过JStorm实时采集直播间的内容,在直播间实时标注分类标签、topic、主题词等标签,定时更新用户图像内容。

第三,利用JStorm对用户查询日志实时采集,定时计算用户查询的CTR。

最后,在用户进行更新的情况下,采用召回策略进行召回,基于排序策略选择top N并呈现给用户。

推荐系统一般是用实时数据统计、离线数据统计加权的结果

Storm流的一个Spout分发多个Bolt

Storm流的多个Bolt合并成一个Bolt

腾讯云推荐系统介绍---百亿级通用推荐系统实践

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。