随笔分类 -  实时流计算

实时流计算相关技术和开发经验
Storm中Spout使用注意事项小结
摘要:Storm中Spout用于读取并向计算拓扑中发送数据源,最近在调试一个topology时遇到了系统qps低,处理速度达不到要求的问题,经过排查后发现是由于对Spout的使用模式不当导致的多线程同步等待。这里罗列几点个人觉得编写Spout代码时需要特别注意的地方。 阅读全文

posted @ 2014-05-27 16:05 大圆那些事 阅读(23473) 评论(1) 推荐(0) 编辑

Storm DRPC实现机制分析
摘要:DRPC是建立在Storm基本概念(Topology、Spout、Bolt、Stream等)之上的高层抽象,个人理解它的目标是在Storm 集群之上提供一种分布式的RPC框架,以便能够利用Storm快速的实现RPC请求的分布式计算过程,即发起一次RPC请求,多个worker计算节点参与计算,最后汇总后将计算结果返回给客户端。 阅读全文

posted @ 2014-01-27 11:50 大圆那些事 阅读(9361) 评论(0) 推荐(0) 编辑

Storm编译打包过程中遇到的一些问题及解决方法
摘要:这里是编译打包Storm过程中遇到的一些问题及解决方法的总结。 阅读全文

posted @ 2013-11-30 11:10 大圆那些事 阅读(10449) 评论(1) 推荐(0) 编辑

集群应用及运维经验小结
摘要:以下是自己这1年多以来在集群应用与运维方面所做事情的梳理与总结,内容比较零散,大家姑且当做一篇非严格意义上的技术文章来阅读。 阅读全文

posted @ 2013-06-27 13:43 大圆那些事 阅读(10345) 评论(3) 推荐(1) 编辑

开源实时流处理系统小结
摘要:这里对目前业界开源的一些实时流处理系统做一次小结,作为日后进行技术调研的参考资料。 阅读全文

posted @ 2013-02-21 12:06 大圆那些事 阅读(13647) 评论(3) 推荐(3) 编辑

Storm使用到的相关技术总结
摘要:Storm作为一个开源的分布式实时流计算框架,其内部实现使用了一些常用的技术,这里是对这些技术及其在Storm中作用的概括介绍。以此为基础,后续再深入了解Storm的内部实现细节。 阅读全文

posted @ 2012-12-16 11:57 大圆那些事 阅读(13464) 评论(0) 推荐(0) 编辑

Storm集群安装部署步骤【详细版】
摘要:本文以Twitter Storm官方Wiki为基础,详细描述如何快速搭建一个Storm集群,其中,项目实践中遇到的问题及经验总结,在相应章节以“注意事项”的形式给出。 阅读全文

posted @ 2012-11-30 15:08 大圆那些事 阅读(71457) 评论(8) 推荐(5) 编辑

Storm常见问题及解决方法收集【持续更新中】
摘要:以下是对个人在使用Storm过程中遇到的一些常见问题及解决方法的整理,其中部分问题的解决方法来自于网络,由于已找不到原始链接,抱歉这里没有逐一列举。 阅读全文

posted @ 2012-11-23 10:08 大圆那些事 阅读(19328) 评论(3) 推荐(3) 编辑

GitHub项目Storm-HBase介绍
摘要:最近完成了一个GitHub项目:Storm-HBase,该项目是Twitter Storm和Apache HBase的结合,它使用HBase cluster作为Storm的Spout数据源,目前只是初步实现,后续会进一步完善。 阅读全文

posted @ 2012-08-06 12:29 大圆那些事 阅读(11580) 评论(7) 推荐(0) 编辑

Storm数据流模型的分析及讨论
摘要:本文首先介绍了Storm的基本概念和数据流模型,然后结合一个典型应用场景来说明Storm支持Topology之间数据流订阅的必要性,最后对比了Storm与另一个流处理系统在数据流模型上的区别之处。 阅读全文

posted @ 2012-07-29 16:06 大圆那些事 阅读(34557) 评论(8) 推荐(0) 编辑

Storm常见模式——分布式RPC
摘要:分布式RPC(distributed RPC,DRPC)用于对Storm上大量的函数调用进行并行计算过程。对于每一次函数调用,Storm集群上运行的拓扑接收调用函数的参数信息作为输入流,并将计算结果作为输出流发射出去。本文翻译自:https://github.com/nathanmarz/storm/wiki/Distributed-RPC,作为学习Storm DRPC的资料,转载必须以超链接形式标明文章原始出处及本文翻译链接。 阅读全文

posted @ 2012-07-02 20:27 大圆那些事 阅读(18568) 评论(1) 推荐(1) 编辑

Storm常见模式——TimeCacheMap
摘要:Storm中使用一种叫做TimeCacheMap的数据结构,用于在内存中保存近期活跃的对象,它的实现非常地高效,而且可以自动删除过期不再活跃的对象。TimeCacheMap使用多个桶buckets来缩小锁的粒度,以此换取高并发读写性能。 阅读全文

posted @ 2012-06-26 12:32 大圆那些事 阅读(8741) 评论(2) 推荐(3) 编辑

Storm常见模式——BasicBolt
摘要:这里介绍Storm的一个常见模式——BasicBolt,用于实现简单函数处理过程或过滤器功能,Storm中专门为这种模式封装了相应接口:IBasicBolt。BaseBasicBolt等类实现了这一接口。 阅读全文

posted @ 2012-06-19 19:56 大圆那些事 阅读(6490) 评论(2) 推荐(1) 编辑

Storm常见模式——批处理
摘要:Storm对流数据进行实时处理时,一种常见场景是批量一起处理一定数量的tuple元组,而不是每接收一个tuple就立刻处理一个tuple,这样可能是性能的考虑,或者是具体业务的需要。下面是针对这种场景的一个示例代码。 阅读全文

posted @ 2012-06-19 18:30 大圆那些事 阅读(12822) 评论(5) 推荐(0) 编辑

Storm常见模式——求TOP N
摘要:Storm的另一种常见模式是对流式数据进行所谓“streaming top N”的计算,它的特点是持续的在内存中按照某个统计指标(如出现次数)计算TOP N,然后每隔一定时间间隔输出实时计算后的TOP N结果。这里通过对storm-starter中的示例代码剖析来介绍一种Storm中可扩展的求TOP N的方法。 阅读全文

posted @ 2012-06-16 15:08 大圆那些事 阅读(10227) 评论(5) 推荐(0) 编辑

Storm常见模式——流聚合
摘要:流聚合(stream join)是指将具有共同元组(tuple)字段的数据流(两个或者多个)聚合形成一个新的数据流的过程。这里通过对storm-starter(代码见:https://github.com/nathanmarz/storm-starter)中的示例代码剖析来说明Storm中是如何进行流的聚合操作的。 阅读全文

posted @ 2012-06-04 19:26 大圆那些事 阅读(22449) 评论(2) 推荐(2) 编辑

实时计算引擎处理延迟的排查过程
摘要:实时计算引擎在处理实时数据时,要保证新到来的数据被及时得到处理。例如,对于网站的访问日志数据,假设每一分钟有一个日志文件,那么实时计算引擎必须满足能够在一分钟之内处理完这一分钟的日志数据文件,否则会导致日志文件堆积而不能被及时处理。前几天,量子后端团队排查了一次实时计算引擎出现的处理延迟故障,其中使用到了ltrace和strace工具,在这里和大家分享一下。 阅读全文

posted @ 2012-03-26 22:27 大圆那些事 阅读(2986) 评论(1) 推荐(0) 编辑

导航