Java:用于存储900,000个客户编号的集合

时间:2018-10-23 08:16:06

标签: java performance

对于其中一个用例,我想存储大约900,000个客户号码以进行改组。它将有2列-一个原始客户编号,另一列是洗牌的客户编号。

使用Java最好的方法是什么,这样我就不会出现内存异常或GC开销?

谢谢。

1 个答案:

答案 0 :(得分:0)

如果一个数字只有4个字节,那么存储900k个数字并不多。如果超出堆,您还可以使用Increase heap size in Java增加堆大小。

如果数据增长并且需要大量空间,则可以使用堆外数据结构,例如http://www.mapdb.org/。它们提供了List或Set或Map接口的实现,但将一些数据保存到磁盘而不是堆中。