ignite学习总结

sapv博客之家,ignite学习总结

按照官方的说法,Ignite是很强大的整体解决方案和开发平台,功能很多而且复杂,和相关技术的比较中也没有提到缺点或者不足,这个只能使用过程中逐步发现。

从设计的角度看,Ignite对开发者非常友好,提供了丰富的、符合各种标准和规范的API,如果在已有项目或者系统中集成的话,对已有代码的侵入性或者对已有架构设计的破坏性较小,在已有架构代码中做出不是很大的修改,就可以在整个系统中加入一个数据缓存层或者内存计算层,对下可以映射各种关系库或者非关系库,对上方便的对接应用系统。

目前来看,一个显而易见的问题就是,社区刚刚建立,文档等开发资料较少,虽然 Ignite本身历史尚短,但是既然来源于历史不算短的商业软件,还是经过实际生产环境验证的,可用性肯定是有的。社区的活跃和文档的完善还需要较长的时间,应用开发商和开发者对他的认知和接受,也还需要一个过程,Ignite技术和社区是不是会像Hadoop等技术一样活跃甚至火爆,或者是不是能替代一些技术,还需要观察,路还很长。

Apache Ignite是一个内存In-memory文件系统和缓存的分布式Data Fabric平台,其与著名的大数据处理框架Apache Spark的区别如下:  博客之家

1.主要区别是Ignite是一个in-memory内存计算系统,是将内存RAM作为首要存储,而Spark只是使用RAM内存处理,只是将内存作为memory-first目标,其之所以快速是因为系统进行了更好的索引,降低了抓取获得时间,避免了序列化。

2.Ignite的mapreduce是充分兼容于Hadoop的MR API,这样能让每个人可以简单地重用之前遗留的MR代码,而能够获得>30倍的性能提升。

3.不像Spark的streaming,Ignite不受RDD大小影响,换句话说,你不必需要在处理之前需要对RDD大小进行一次检测定型,你能真正实现Streaming计算,意味着在流内容处理时没有任何延迟。

4.溢出效应是in-memory计算机系统的通用问题,因为内存是有限制的,在Spark中,RDD是不可变的,如果一个RDD以>1/2节点内存RAM被创建,随之而来的RDD的转换与生成(transformation和 generation)将填满整个节点内存,这会引起溢出效应,除非一个新的RDD在不同的其他节点上创建, Tachyon能够本质上解决这个问题;Ignite并不会有这种数据溢出效应,因为它的缓存能够以原子或事务方式更新,不管如何,溢出可能还是会发生,处理策略见这里

5.Ignite第一公民是文件系统的缓存层。

6.Ignite使用off-heap内存避免GC暂停且高效化。

7.Ignite保证强一致性。

8.Ignite支持SQL99作为其数据处理方式,支持完整的ACID事务。

9.Ignite提供内存in-memory的SQL索引功能,能够避免整个数据的扫描,直接提升性能。

10.Ignite开发者不必学习Scala

  • 发表于 2018-05-21 23:08
  • 阅读 ( 351 )
  • 分类:技术架构

0 条评论

请先 登录 后评论
不写代码的码农
张鹏

大数据工程师

95 篇文章

作家榜 »

  1. 张鹏 95 文章
  2. 薛华英 0 文章
  3. 0 文章
  4. 赵科 0 文章
  5. 王孖珺397954227 0 文章