Storm翻版:开源实时数据处理系统Samza

Storm翻版:开源实时数据处理系统Samza

转载自:http://www.kankanews.com/ICkengine/archives/49449.shtml

Twitter的流处理系统Storm最近出现了一个“翻版”——Samza。Samza是近日由LinkedIn开源的一项技术,它是一个分布式流处理框架,专用于实时数据的处理,非常像Twitter的流处理系统Storm。不同的是Samza基于Hadoop,而且使用了LinkedIn自家的Kafka分布式消息系统。

Storm和Samza极其相似,就像LinkedIn的Chris Riccomini在博客中阐述的那样:“[Samza]可以帮助你构建应用,处理消息队列——更新数据库、计数以及其他的聚合、转换消息等等。”而这些其实都是很经典的Storm应用,只不过迁移到Samza之上了,Samza文档也对比了这两个系统。

上个月,Samza在各种论坛和社区上被广泛传播,其中有评论指出了Samza可能带来的好处:

“跟很多人一样,我们使用Storm来处理基于Kafka的流数据,然后,再将这些数据发送到Hadoop上进行离线分析。如果能把这三个环境整合到一起,就是一个很大的胜利。“

表面上看,这似乎是一个很不错的想法。Apache软件基金会的项目主页,介绍了搭配使用Kafka和YARN的特点和优势。

高容错:  如果服务器或者处理器出现故障,Samza将与YARN一起重新启动流处理器。

高可靠性:Samza使用Kafka来保证所有消息都会按照写入分区的顺序进行处理,绝对不会丢失任何消息。

可扩展性:Samza在各个等级进行分割和分布;Kafka提供一个有序、可分割、可重部署、高容错的系统;YARN提供了一个分布式环境供Samza容器来运行。

Samza的未来

至于Samza能不能像Storm一样吸引大量的用户和社区参与创新,还有待观察。但是LinkedIn肯定会像Twitter开发Storm一样来保证Samza的发展,而且后者在可用性上更具优势,毕竟运行在YARN或者Mesos框架上的Samza多了一些灵活性。

如果Samza未来有一个很好的前景,那么YARN也对得起Hadoop社区在过去18月的“炒作”,它不仅可以运行Storm,还可以运行Samza,甚至还可以运行其他很多的东西。这点很重要,毕竟很多软件厂商都把大数据的“期货”(甚至整个未来)压在了Hadoop上,他们希望这个平台能成为最后的赢家。

以往对MapReduce技术的依赖限制了Hadoop的适用性,但是YARN已经开放了对大规模的流处理、交互式SQL查询、机器学习和图像处理负载的支持。随着技术的日新月异,Hadoop成为支撑所有大数据应用库的想法变得更加现实。

推荐阅读:

Twitter Storm安装配置(集群)笔记 http://www.linuxidc.com/Linux/2013-05/84307.htm

安装Twitter Storm集群 http://www.linuxidc.com/Linux/2012-07/66336.htm

Twitter Storm安装配置(单机版)笔记 http://www.linuxidc.com/Linux/2013-05/84306.htm

Storm 实战及实例讲解一 http://www.linuxidc.com/Linux/2012-08/69146.htm

转载于:https://my.oschina.net/u/2326085/blog/391232

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109505.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java 读写文件的两种方式

    java 读写文件的两种方式1.情景展示在实际开发过程中,对于文件的读写操作也是经常碰到的,如何用java完成对文件的准确无误的读写呢?2.场景分析在java中,我们可以通过数据流(二进制)来完成对文件的操作;其中,数据

    2022年7月1日
  • vue/uniapp 如何让页面的 onLoad 在 onLaunch 之后执行[通俗易懂]

    app.vue里的onLaunch中如果有异步方法(比如:登录),返回结果可能会在页面的onLoad之后,但onLoad中的方法需要登录回调的结果。为了让页面的onLoad在onLaunch之后执行,解决方案:1.main.js添加代码Vue.prototype.$onLaunched=newPromise(resolve=>{Vue.prototype.$isResolve=resolve;})2.在App.vue的onLau

    2022年4月14日
  • DrawText

    DrawTextDrawText函数功能:该函数在指定的矩形里写入格式化文本,根据指定的方法对文本格式化(扩展的制表符,字符对齐、折行等)。函数原型:intDrawText(HDChdc,LPCTSTRl

    2022年8月2日
  • openssl生成cer证书_tls证书生成

    openssl生成cer证书_tls证书生成一安装opensslwgethttp://www.openssl.org/source/openssl-1.0.0a.tar.gztarzxvfopenssl-1.0.0a.tar.gzcdopenssl-1.0.0a./config–prefix=/usr/local/opensslmake&&makeinstall二创建主证书先创建一个ssl的目录:m…

    2022年9月19日
  • [WinAPI] 获取窗口句柄的几种方法[通俗易懂]

    [WinAPI] 获取窗口句柄的几种方法[通俗易懂]转:http://www.cnblogs.com/zjutlitao/p/3889900.html1、使用FindWindow函数获取窗口句柄示例:使用FindWindow函数获取窗口句柄,然后获得窗口大小,并且移动窗口到指定位置。我们想获得酷我音乐盒的窗口句柄并移动它,该怎么办呢?首先打开VC或者VS里面tool中的SPY++点击查找窗口如下:PS:把那个靶心似的的东西…

    2022年7月21日
  • java删除文件内容_java 删除文件中的数据[通俗易懂]

    java删除文件内容_java 删除文件中的数据[通俗易懂]展开全部32313133353236313431303231363533e78988e69d83313333373962311、如果只是想要文件中的内容,可以使用如下代码:FileOutputStreamfs=newFileOutputStream(newFile(“C:\\buyterms.txt”));2、如果是想要文件夹中的内容,可以使用如下代码:packagecom.xx;im…

    2022年6月12日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号