[关闭]
@liyuj 2018-08-09T09:53:32.000000Z 字数 3707 阅读 2175

GridGain内存计算平台与Oracle TimesTen Scaleout对比

1.产品介绍

GridGain
GridGain内存计算平台是一个高性能、集成化、混合式的企业级分布式架构解决方案,功能强大,有先进的集群管理功能,对于分布式内存数据库、流处理技术、分布式计算、分布式服务、分布式数据结构、持久化、Hadoop和Spark加速等功能,提供了广泛的支持,用于大规模的数据处理,比传统的基于磁盘或闪存的技术在性能上有指数级的提升。最新的版本在基于ZooKeeper的发现机制基础上,支持扩展至上千个节点。该软件由美国GridGain公司提供,分为开源版(Apache Ignite)、企业版等不同版本,可以根据需要进行选择。
Oracle TimesTen Scaleout
TimesTen Scaleout是Oracle TimesTen 18.1版本的一个新的产品分支,是Oracle第一个商用关系型内存分布式数据库,支持分布式,横向扩展。这种新的体系结构使TimesTen内存数据库能够扩展至几十台主机,达到数百TB的容量,并且每秒支持数百万次事务,而无需手动数据库分片或应用程序分区,特别适合有着高并发、高吞吐量事务处理需求的业务场景。

2.产品对比

基本属性

序号 对比项目 GridGain TimesTen Scaleout
1 是否支持开源 分为开源版(Apache Ignite)和企业版 商业软件
2 技术支持 有开源社区技术支持,也有商业技术支持 商业技术支持
3 线性扩展 支持,使用ZooKeeper的发现机制,支持扩展至上千个节点。 支持,最多扩展至64个节点
4 内存分布式数据库 内存分布式数据库是GridGain的主打功能之一。 是Oracle第一个商用的内存分布式数据库。之前的TimesTen为非分布式架构
5 扩展功能 GridGain基于自己特有的分布式架构,开发了完整的企业级分布式架构解决方案,包括分布式内存数据库、流处理技术、分布式计算、分布式服务、分布式数据结构、NoSQL数据库集成、Hadoop和Spark加速等 作为Oracle的商用内存分布式数据库产品,定位明确,功能专注
6 部署模式 支持多种部署模式,支持独立部署,嵌入式部署,也可以部署在云环境中,对Kubernetes等新技术也有广泛的支持 支持嵌入式和独立部署,可以脱离Oracle独立部署为内存分布式数据库。安装配置较为复杂,对于新的技术,云环境等支持较差。
7 客户端协议 支持SQL、ODBC/JDBC、除了Java还支持.NET平台,也支持Python、Ruby、PHP或者NodeJS,也可以考虑使用GridGain的二进制客户端协议 支持SQL和PL/SQL、支持ODBC/JDBC、OCI、ODP .NET,另外许多开源数据库API和适配器也可以与TimesTen一起使用,包括 PHP、node.js、Ruby、Python、Go、R和REST等
8 监控等企业级功能 企业版有完善的监控管理工具、安全、滚动更新、数据中心复制等功能,有完善的图形界面。 提供命令行界面、图形界面、存储过程、API调用等多种形式的相关支持。
9 开发支持 因为GridGain功能的强大性,提供了各种可能的方式方便开发,具体代码改动工作量,取决于架构设计模式以及软件使用方式。已有的代码可能改动较多,也可能改动很少。 对应用开发透明,可以轻易地将TimesTen部署进已有的系统中,代码改动较少。
10 多平台支持 支持常见操作系统平台和CPU架构 支持常见操作系统平台和CPU架构
11 综合成本 综合成本较低,技术支持有开源社区技术支持,也可以购买商业技术支持。 Oracle的综合成本高昂,包括软件授权费、技术支持费、培训费用等
12 成熟度 在内存计算平台领域有十余年的经验,有众多的商用案例。 TimesTen有近20年的历史,但是TimesTen Scaleout为Oracle的第一款商用内存分布式数据库产品。
13 行业趋势 国内一直在推进去IOE的工作,国内对成熟的开源项目和开源社区的认可度、参与度不断提高,为GridGain这样的开源公司提供了更多的机会。 不符合行业发展趋势,国内会逐步进行Oracle相关产品替代工作。

内存分布式数据库

序号 对比项目 GridGain TimesTen Scaleout
1 SQL支持 支持兼容ANSI-99的SQL标准,支持DDL、DML语句。 支持兼容ANSI-99的SQL标准,支持DDL、DML语句,透明支持Oracle的相关技术
2 事务 不完整,在键值API层次支持ACID事务,基于经过一阶段提交优化后的二阶段提交机制。SQL层,仅支持原子性。 支持完整的ACID事务、多语句事务、约束和全局二级索引。
3 数据库支持 支持提供JDBC/ODBC协议的传统关系型数据库,包括Oracle,也包括MySQL等其他数据库。 只支持Oracle。
4 数据同步 支持数据库的通读和通写,支持多种数据同步方式,提供开发人员接口,自定义能力强。 有非常完善的数据同步方式。
5 故障恢复 基于WAL和检查点等相关技术,有完善的故障恢复机制。同时也支持通过复制、备份等机制提高可用性。 TimesTen有事务日志和检查点文件存放在磁盘上。当系统重启或者意外宕机,内存数据库可以从检查点文件和事务日志中得到恢复。另外,还可以通过复制技术来提高可用性。
6 数据库模型 键值存储,通过H2引擎提供关系型功能。 关系型数据库
7 并置处理 通过将计算带到数据实际驻留的服务端节点,会在数据实际存储的地方执行高级的业务逻辑或者分布式SQL,甚至关联,避免了昂贵的序列化和网络开销 不支持
8 索引 支持 支持
9 缓存维护操作 使用标准DDL语法,添加了部分专有属性。 专有的CREATE CACHE等语法,需要一段时间的学习。
10 开发工具 支持JDBC协议的工具,都可以接入GridGain。 Oracle SQL Developer对TimesTen有更好的支持
11 开发便利性 GridGain为常见的、主流开发框架提供了集成的支持,包括Spring、Hibernate、MyBatis、Spring Data JPA等等。 仅提供JDBC/ODBC等标准协议的支持。
12 数据预热 如果开启了原生持久化,系统重启无需预热数据。 不支持

扩展特性

在内存分布式SQL数据库功能之外,GridGain相比TimesTen,还提供了大量的扩展特性,比如:

3.总结

如果将GridGain作为一个内存分布式数据库,那么从功能性来说,与Oracle的TimesTen Scaleout产品基本对等,TimesTen具有的功能,GridGain大体都有,但是TimesTen Scaleout作为一个专业的内存分布式数据库,在部分功能的细节设计上,在与Oracle产品的功能整合上,做的更好。但就GridGain来说,它不仅仅是一个内存分布式数据库,在已有的系统中,如果引入了GridGain软件,相当于引入了一个多功能的数据处理平台,为已有系统的未来发展和演进,提供了更多的可能,会极大地增强已有系统的扩展性,保护用户原有的投资。
而如果引入了Oracle的TimesTen软件,会进一步增强与Oracle的绑定,不管是从行业发展的趋势来说,还是从降低大型企业的IT支出成本来说,TimesTen都未必是最佳的选择。

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注