Apache Ignite在世界范围内得到广泛使用,并且一直在增长。 诸如Barclays,Misys,Sberbank(欧洲第三大银行),ING,JacTravel之类的公司都使用Ignite来增强其体系结构的各个部分,这些部分对于这些组织的日常运营至关重要。 此外,像TIBCO这样的供应商将Apache Ignite的核心缓存数据网格模块与具有高级索引和SQL功能的Master Data Management平台一起使用。
但是,其他供应商(例如HazelCast,Oracle,Ehcache,GemFire等)也可以替代ApacheIgnite。ApacheIgnite与其他供应商的主要区别在于功能的数量和使用的简便性。 Apache Ignite提供了多种功能,可用于不同的用例。 Apache Ignite , Hazelcast和Apache Cassandra之间的主要区别如下:
特征 | 阿帕奇点燃 | 淡褐色 | 阿帕奇·卡桑德拉(Apache Cassandra) |
---|---|---|---|
资料模型 | 核心价值 | 核心价值 | 列族 |
耐用性 | 是(WAL和内存页) | 是的(不是免费的) | 是(提交日志和SStable) |
SQL支持 | 是 | SQL查询 语言 | 不,支持SQL之类的 查询语言 |
次要指标 | 是 | 是 | 是 |
大数据加速器 | 是 | 是的(不是免费的) | 没有 |
交易 | 是 | 是 | CAS –不是酸 符合 |
用例 | 最适合 读/写繁重的工作负载 | 最合适的 用于繁重的读/写工作负载 | 最适合 大量写入 工作量 |
服务器端脚本 | 是(计算并 服务网格) | 是 | 没有 |
可用性 | 高 | 高 | 高 |
流媒体 | 是 | 是的(不是免费的) | 没有 |
在记忆中 映射/缩小 | 是 | 是 | 没有 |
从上表中可以看到,与其他竞争者不同,Apache Ignite提供了持久的内存架构(免费),服务器端脚本(计算网格),一组称为内存Hadoop加速器的组件和Spark共享的RDD,它们可以为Hadoop和Spark用户提供实时性能。 当您需要可伸缩性和高可用性以及处理大量事务的能力时,Apache Ignite是正确的选择。 它是用于商品硬件或云基础架构上的关键任务数据的理想平台。
现在,让我们将Apache Ignite的功能与另一个名为Tarantool的内存数据库进行比较 。 Tarantool是一个内存数据库,由前MySQL工程师领导的团队设计。
特征 | 阿帕奇点燃 | Tarantool |
---|---|---|
资料模型 | 核心价值 | 像容器 |
耐用性 | 是(WAL和内存页面) | 是(WAL,LSM树) |
SQL支持 | 是 | 没有 |
次要指标 | 是 | 是 |
大数据加速器 | 是 | 没有 |
ORM支持 | 是 | 没有 |
分布式交易 | 是 | 没有 |
用例 | 最适合 读/写繁重的工作负载 | 最合适的 用于繁重的读/写工作负载 |
服务器端脚本 | 是(计算并 服务网格) | 是(使用编程 语言Lua) |
可用性 | 高 | 高! 主从复制 |
流媒体 | 是 | 是(内置队列) |
在记忆中 映射/缩小 | 是 | 是 |
如果仔细研究上表,您会发现Tarantool不支持SQL和分布式事务。 甚至Tarantool也没有为使用Hibernate或MyBatis提供任何ORM支持。 从体系结构的角度来看,Tarantool使用主从复制,只要主服务器发生故障,它就可以进行数据丢失。
翻译自: https://www.javacodegeeks.com/2018/10/differences-apache-ignite-tarantool.html