Ignite内存存储层:这一层可以算是Ignite的核心层了 。数据可以通过不同分区,复制模式分布在Ignite集群所有节点,部分节点或者本地节点 。通过数据分区和复制,比如1主多备的方式,可以提高数据的可用性,即便主数据节点故障后,集群中的备数据节点可以切换为主节点继续提供读写服务 。同时备节点也可以作为只读节点使用,提高数据读操作的吞吐量 。Ignite还利用Java堆外内存存储数据和索引,减少了JVM的垃圾回收次数和时间,提供了更高效的操作 。 API接口层: 丰富多样的接口支撑Ignite向上提供了诸如分布式数据库,数据网格和计算网格的能力 。Key/Value+transaction,可以把Ignite当做和redis,Memcached一样的缓存使用 。而对SQL ANSI-99的兼容,有可以把Ignite当做一个分布式数据库来用 。除了数据能力,Ignite还允许你通过Compute Grid的接口提交计算任务,充分利用集群的计算资源 。Ignite还支持把计算任务部署在和计算数据所在的相同节点上,减少网络传输和数据的序列化开销,提高计算效率 。流处理,机器学习网格,服务网格,消息队列等,Ignite也同时提供支持 。结论Apache Ignite 是一个专注于分布式内存计算的开源项目 。Ignite 将数据存储在内存中,分布在提供快速数据访问的多个节点上 。将数据异步传播到持久层的选项是一个额外的优势 。此外,与各种数据库集成的能力也使 Ignite 成为开发人员使用它进行数据库缓存的简单选择 。Apache Ignite整体来说,它基本把现在分布式的一些概念都集成了,包含分布式存储、分布式计算、分布式服务、流式计算等等 。而且,它对Java语言的支持,与JDK能够很好的整合,能够很友好的兼容JDK的现有API,当你开启一个线程池,你不需要关系是本地线程池还是分布式线程池,只管提交任务就行 。Apache Ignite在与RDBMS、Hadoop、Spark、Kafka等传统关系型数据库和主流大数据套件的集成,提供了非常灵活好用的组件API 。
推荐阅读
-
-
-
沈阳|速看!沈阳又将迎来一场降雨!还有降温!时间就在……
-
在北京短租的房子,房东不让用电暖风电锅…这样合理吗
-
-
-
「轰炸机」2年前,那4位宁愿做逃兵也拒绝服兵役的少年,如今他们活成了这样
-
唐艺昕首晒3岁女儿,母女俩一起做饼干,小公主扎哪吒头超可爱
-
-
-
孔晓振|孔晓振美国办完婚礼「幸福感言曝光」 公司:迈开人生珍贵第一步
-
-
-
温柔妹妹|12首轮屏幕测试确定供应商,iPhone8低至百元唱响悲歌,iPhone
-
英国|英国彻底傻了,抵制华为后果有多恐怖?中国正式宣布
-
-
「三国逐鹿」曹操为何不派许褚单挑颜良,颜良二十回合大败徐晃
-
-
-
文峥解说|S10奖金池曝光?总奖金高达225w美元,冠军可获外加25%皮肤销量!