Apache Ignite和Apache Storm在很多方面都是两种截然不同的技术 - 特别是因为Storm有一个非常具体的用例,而Ignite在同一个屋檐下有相当多的工具 . 据我了解,Ignite的核心是它的内存存储 . Build 在它的数据局部敏感计算 . Build 在各种酷玩具上 . 我感兴趣的是Streaming功能,它基本上是对内存缓存不断变化的查询监听器 .
如果我将滑动窗口设置为一个元组,Ignite会像Storm一样提供一次一元组的功能 . Ignite将数据存储在内存中 . Storm不会在内存中“存储”数据,但是元组当然也存储在内存中 . 所以在这两种情况下我都有流媒体,我在内存中有数据,我能够分配我的计算 .
我觉得,由于两种技术的抽象,编写执行许多数据转换步骤的程序可能更容易在Storm中编写 . 对此有何意见?
第二个问题:性能如何?我猜Ignite的数据位置可能会给它一个优势 . 另一方面,我认为在Storm中可以更好地分配多个步骤(在各种机器上使用不同的螺栓),而Ignite程序可能不会那么容易分割 .
如果我仍然想要分发流(不仅是每个数据,还有不同机器上的步骤) . 我想我必须编写多个Ignite流媒体,通过缓存进行通信,对吗?这听起来比在Storm中更难(让我们回到第一个问题) .