Ignite is a memory-centric distributed database, caching, and processing platform for transactional, analytical, and streaming workloads, delivering in-memory speeds at petabyte scale
Apache Ignite内存数据组织平台是一个高性能、集成化、混合式的企业级分布式架构解决方案,核心价值在于可以帮助我们实现分布式架构透明化,开发人员根本不知道分布式技术的存在,可以使分布式缓存、计算、存储等一系列功能嵌入应用内部,和应用的生命周期一致,大幅降低了分布式应用开发、调试、测试、部署的难度和复杂度。
Apache Ignite内存数组组织框架是一个高性能、集成和分布式的内存计算和事务平台,用于大规模的数据集处理,比传统的基于磁盘或闪存的技术具有更高的性能,同时他还为应用和不同的数据源之间提供高性能、分布式内存中数据组织管理的功能。
特性:
可以将Ignite视为一个独立的、易于集成的内存组件的集合,目的是改进应用程序的性能和可扩展性,部分组件包括:
高级的集群化
数据网格(JCache)
流计算和CEP
计算网格
服务网格
Ignite文件系统
分布式数据结构
分布式消息
分布式事件
Hadoop加速器
Spark共享RDD
Ignite如下特性
1)使用off-heap缓存:避免gc停顿。
2)固化内存可设置堆外内存使用阈值,随着历史地址的增多,系统内存被耗尽时,因持久化特性,固化内存会在内存中保留热数据,自动地将冷数据移出内存到磁盘
3)使用持久化:宕机无须担心历史数据丢失,重启无须初始化。
4)使用集群:可自动同步节点中的数据,可自动发现新机器,方便扩展,提升性能。
5)使用固化内存的“复制”模式,只查询本机,占用内存大,但是性能好。
6)H2内置数据库,以标准SQL语法存储和查询数据,且能自定义SQL函数,便于应付不同规则。
7)对于客户环境,程序能自检出建议调优的系统配置项
内存优势
1)堆外内存
2)避免显著的GC暂停现象
3)自动化碎片清理
4)可预估的内存消耗
5)高SQL性能
磁盘优势
1)可选的持久化
2)支持SSD介质
3)分布式存储
4)支持事物
5)集群瞬时启动
Ignite的持久化存储具有以下优势:
1)可以在数据中执行SQL操作,不管数据在内存还是在磁盘中,这意味着Ignite可以作为一个经过内存优化的分布式SQL数据库
2)可以不用讲所有的数据和索引保持在内存中,持久化存储可以在磁盘上存储数据的大数据集合,然后只在内存中保持访问频繁的数据子集
3)集群是瞬时启动,如果整个集群宕机,不需要通过预加载数据来对内存进行数据“预热”,只需要将所有集群的节点都连接到一起,整个集群即可正常工作
4)数据和索引在内存和磁盘中以相似的格式进行存储,避免复杂的格式转化,数据集只是在内存和磁盘之间进行移动