栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

修改IGNITE partition

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

修改IGNITE partition

 Ignite的partition默认是0到1023。这个分区是针对cache级别的,并不是系统级别的参数。如果开启了持久化功能,那么数据会持久化到磁盘的work/db/{nodeid}中。如果数据量比较大,就会导致文件句柄过多。(例如1个cache,最多会持有1024个文件句柄)

我这里是通过SQL创建cache,通过查阅官网,可以预设一个自定义的cache template,在模板中自定义AffinityFunction(关联函数),设置自定义partitions参数,在CREATE TABLE的时候使用WITH TEMPLATE=<模板名>的方式引用新模板即可。

修改如下:


	

		
		
			
				
					
						
					
				
			
		

		
			
				
					
					
					
					
					
					
						
							
						
					
				
			
		
        ...    
	



CREATE TABLE ABC(
    id BIGINT PRIMARY KEY,
    aa VARCHAr(1024) NOT NULL,
    vv VARCHAr(1024) NOT NULL,
    description VARCHAr(1024)
) WITH "TEMPLATE=PARTITION_512,ATOMICITY=TRANSACTIONAL_SNAPSHOT";

检查work/db/{nodeid}中的part-{i}.bin的文件名,最大id是配置partition-1。

再查看ll /proc/{进程id}/fd下的句柄,句柄数减少。

功能验证也没什么问题。

参考:

数据建模 | Apache Ignite - 分布式内存数据库

SQL参考 | Apache Ignite - 分布式内存数据库

配置缓存 | Apache Ignite - 分布式内存数据库

Affinity Collocation

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1013353.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号