导出大数据量的经验总结

1,如果在导出大数据量的时候内存溢出怎么办?

a,比如导出数据怎么算大小;

答:一个文件实际上开头一小部分内容标识此文件,然后其他的全部是文件内容,比如文件里面的数据有1000万行,每行如果有100列,其中每列都是一个浮点数,那么怎么算一个文件大概大小呢?如果映射出浮点数是double类型的话,可以这样算:比如double是64位就是8字节,8*100*1000w=8000000000这么多字节,再转换成MB或GB,就约等于7.45GB(当然正常情况下不会有这么大的文件内容)

b,怎么调整jvm内存?

答: 根据试算出的文件大小,一般扩容都会再原大小的基础上预留buffer空间,比如预留20%,就是要预留9GB的样子。

c,如果不跳整内存,是否有另外的办法支持

答:有,使用excel的流式处理类:SXSSFWorkbook,再创建此对象时可设置一个最大行数,这个参数就只保留指定行数的内容到内存。超出的都会刷新出去

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值